Page 263 of 396

Re: Ask a simple question, get a simple answer

Posted: Wed Oct 24, 2018 4:46 pm
by THOM
Pompidom wrote: Wed Oct 24, 2018 4:43 pm Which asset pack contains the log1 herbs?
The LoG1 pack. Not the LoG2 one.

Re: Ask a simple question, get a simple answer

Posted: Wed Oct 24, 2018 9:20 pm
by Isaac
THOM wrote: Wed Oct 24, 2018 4:45 pm Maybe they don't appear in the Object list of the Editor because they don't have an Editor Icon defined.
At least all objects without one do not appear.
That sounds sensible, but in this case I defined a cloned dagger object, and called it base_dagger. I could spawn it, but I could not find or place it within the editor.

Re: Ask a simple question, get a simple answer

Posted: Wed Oct 24, 2018 9:57 pm
by KhrougH
KhrougH wrote: Wed Oct 24, 2018 2:33 pm can i use "baseObjet" to identify an object or an item?

example:
for var in party.map:entitiesAt(party.x, party.y) do
if string.match(var.baseObject, "decoration") then

this return nil, so it doesn't work. but maybe there is another way.
ok, explanation needed:
when i check for (example) an item on the tile map-paty.x-party.y i can find several object, items walls and... whatever... so if i look for my item with part of the name --string.match(var.baseObject, "decoration") -- i could find more than 1 things but only one it the one i need.

so in my specific case i'm looking for wall but objet.wall doesn't exist. so i can recognize them?
we have objet.door , objet.lock , what else!?... but if i use object.wall LoG2 says "no way, stupid!"

i show you another thread with the script i'm talking about:

viewtopic.php?f=22&t=18314&p=118389#p118389

of corse... I wrote the script which is part of a defineObject so it could be totally wrong :lol: :lol: :lol:
but for the moment it works. i'm just almost sure that there is another way to do it, probably even more elegant ad developer like toarrange scripts :D

Re: Ask a simple question, get a simple answer

Posted: Sun Oct 28, 2018 8:14 pm
by bongobeat
Hi there,
Can someone explain how the magic resistances work please? I mean how is calculated the total magic resistances, with additionnal gears.
I want to remove temporally 60 % of all resistances.

I'm trying to make a condition based on Zimberzimber's decay condition.
(His condition changes the principal stats : STR, DEX, VIT, WILL)

This is the onRecomuteStats of the condition, except I have changed it with resist_shock, etc... but that don't work at all.

Code: Select all

	onRecomputeStats = function(self, champion)
		local sho = champion:getCurrentStat("resist_shock")
		champion:addStatModifier("resist_shock", sho * -0.6)
	local fir = champion:getCurrentStat("resist_fire")
		champion:addStatModifier("resist_fire", fir * -0.6)
	local col = champion:getCurrentStat("resist_cold")
		champion:addStatModifier("resist_cold", col * -0.6)
	local poi = champion:getCurrentStat("resist_poison")
		champion:addStatModifier("resist_poison", poi * -0.6)
I've tryed a basic formula like

Code: Select all

champion:addStatModifier("resist_shock", sho -300)
but this is not what I want, it remove completely the shock resistance, based on what gears do you wear.

Re: Ask a simple question, get a simple answer

Posted: Sun Oct 28, 2018 9:10 pm
by KhrougH
Drakkan wrote: Wed Oct 29, 2014 7:50 pm
SpoilerShow
I do not think messing up all together is good idea, but making few guide-posts could help some poeple. On the other side as I know it, if someone new come to the forum, in majority cases he/she does not read existing threads, but rather start new one, doesnt caring that similar topic already exists here many times. That´s reality and I do not think you can change it :) But I will keep fingers if you want making some "gathering information" thread
Well... I am one of those pretty new in this forum. Before signing in it i read for long threads looking for some help in modding and scripting.
But even now i need some help even if the answer I'm looking for has been already gave to someone else in the past.
I think the problem is the search engine... Or i don't know what... But i can't find the answer i need.
OR... it may depends by the fact that new modder/scripter just don't know what to search in the forum.
In fact NOW i can find answers to queations i had weeks ago. Now that i know what to search, now that i know the words i need.
I remember i spent a week before finding that findEntity was the solution for my problem.
What is saving my ass now is the superthread... Folowing link by link i'm reaching interesting argument.

So ... In my opinion the answer could be making more post as the Superthreads with answers to the more common questions and links about where to find explanation of contents
http://www.grimrock.net/modding/scripting-reference/
Because is not enough making a list, someone should explain what these "words" does when you use.

Well ... This is an opinion of a newer user.
So if you think something is wrong in this post... Is because (again) i'm new and i can't find the answers i need.

Re: Ask a simple question, get a simple answer

Posted: Mon Oct 29, 2018 7:12 am
by akroma222
bongobeat wrote: Sun Oct 28, 2018 8:14 pm Hi there,
Can someone explain how the magic resistances work please? I mean how is calculated the total magic resistances, with additionnal gears.
I want to remove temporally 60 % of all resistances.
Hey Bongo,

.....as KhrougH suspected - Ive asked about this before in the 'Multiple Magic School Spells" thread
viewtopic.php?f=22&t=9579&p=109434&hili ... ce#p109434

AndakRainor offers a method by which to accurately get resistance values here^^

Now the issue, in fetching accurate values for some of our champ stats is - pending on what and where you are doing these calculations (eg - trait hook) ....... the accuracy of the fetched stat values can vary - this is because there is an "priority order" to which the vanilla game calculates statistic values.
Minmay has given us this order (I believe this to be up to date) :
SpoilerShow

Code: Select all

-----------------------------stat recompute order:

--1. items in inventory from 1 to BackpackFirst-1 in order
--2. conditions in undefined order (pairs)
--3. skills in undefined order (pairs)
--4. traits in undefined order (pairs)

----------------------------applied after all onRecomputeStats are called:

--5 protection is rounded to the nearest integer
--6 leadership and nightstalker
--7 light and heavy armor penalties
--8 strength, dexterity, vitality, willpower bonuses to max load, evasion, health and health regen, energy and energy regen, resistances
--9 (after strength/dexterity/vitality/willpower are applied), resistances are clamped between 0 and 100, health is clamped at max_health, energy is clamped at max_energy
--10 when resting, evasion is decreased by 100
This shows that we encounter problems if trying to to fetch an actual value for a statistic whilst the game is in the middle of recalculating that statistic. This is actually something I need to revisit and check and double check myself. However, I will post my resistance modifying trait so you can get an idea of how to code that up:
SpoilerShow

Code: Select all

{
		name = "correct_resistance",
		uiName = "Core Hidden Trait", 
		iconAtlas = "mod_assets/textures/gui/blank_borders/blank64x80.tga",
		icon = 0, 
		charGen = false,
		hidden = true,
		group = "core",
		description = "...no descript needed for hidden traits...",
		--------------------------------------
		onRecomputeStats = function(champion, level)
			if level > 0 then
				local statResTab = {strength = "fire", dexterity = "shock", vitality = "poison", willpower = "cold"}
				for k,v in pairs(statResTab) do
					local currStat = champion:getCurrentStat(k)
					local diff = currStat - 10
					if diff >= 1 then	
						champion:addStatModifier("resist_"..v, - (diff * 2))
					end
				end
			end
		end,
	},
Now while this works for my purposes (the only stat bonus given to resists are done and capped at champ creation - no more resist bonuses from increasing stats after the game begins) .... Im unsure on how this cleanly stands up to the aforementioned problem w the stat calc process....

EDIT: In fact I remember someone specifically telling me NOT to get Stat values in the onRecomputeStat hook - as I have done in the above definition (local currStat = champion:getCurrentStat(k))

I remember less so a solution to that being.....(sorry this was a while back) .... Call up a custom get Stat Function that will refer to either a global statistic variable .........OR a Config Table .......OR something else that will hold the statistic value constant until your code manually updates it. Then you can get / fetch a stable value of your statistic.

Plz anyone, tell me if Ive got this wrong -
I think this issue is important ....and a clear reliable method to read stat values would is needed + would benefit all modders

Hope this helps 8-)

Re: Ask a simple question, get a simple answer

Posted: Tue Oct 30, 2018 12:40 am
by KhrougH
oook , i give up.
after checking in this forum and on google and on blender tutorials and after some tests...
i still can't modify an existing object adding this famous "gate node" that is missing when you define an object as a door.
i found many thread about this argument but all of them say "add a node called GATE in the model" but i couldn't find someone who says HOW TO DO IT...
I know what a node is... i don't know where to place it and how to set neither.
may someone help?

EDIT:
maybe i even misundersood what a "node" is.
isn't it that module for combining colors in the "node edit" window in bender?

Re: Ask a simple question, get a simple answer

Posted: Tue Oct 30, 2018 7:21 am
by Isaac
KhrougH wrote: Tue Oct 30, 2018 12:40 am maybe i even misundersood what a "node" is.
isn't it that module for combining colors in the "node edit" window in bender?
Mixed terms between two different softwares.
__

For it to function like a door, the gate node in a door must (or at least should) contain the mesh data of whatever part of the model that is considered the door itself (as opposed to the door-frame, and other decorations); two of these nodes for double doors. This is because the door component automatically handles the door animations—by moving whatever node is named "gate".

In Blender (or the GMT), you can rename the object (or parent object) 'gate'.
SpoilerShow
Image

Re: Ask a simple question, get a simple answer

Posted: Tue Oct 30, 2018 7:39 am
by KhrougH
Isaac wrote: Tue Oct 30, 2018 7:21 am
SpoilerShow
Image
i can't use Grimrock Model Toolkit. i have a macbook. so i go straight to the mod_asset folder

Re: Ask a simple question, get a simple answer

Posted: Tue Oct 30, 2018 8:45 am
by Isaac
KhrougH wrote: Tue Oct 30, 2018 7:39 am i can't use Grimrock Model Toolkit. i have a macbook. so i go straight to the mod_asset folder
Blender then. It's the same general task.