Jump to content

G5 Modding Questions


Recommended Posts

Hi everybody, newbie here interested in doing some Geneforge 5 modding and I figured I'd ask a few questions before I got too much deeper into what I'm trying to do so I have a bit better idea of my options.

 

1. Is there any way to change core ability names like battle magic or fire shaping to something else?

 

2. Is there any way to make immobile creation sprites like pylons and turrets move without disappearing?

 

3. Are there any aspects of creations that can’t be changed besides (I think) essence cost and degrading creations?

 

4. Are there any general tips/ tricks/ tools you'd recommend to a new modder? TheKian's modding suite looked interesting but I couldn't get it to run and I'm not tech savvy enough to figure out why.

 

Any help is appreciated.

Link to post
Share on other sites

Welcome to Spiderweb Software. Please leave your sanity at the door. We are not responsible if you lose it. :)

 

1. Ability names are in a text document and can be changed.

 

2. You can the movement from 0, but weird things can happen.

 

4. Look at other mods and compare the changes to the original versions. Some changes can be complicated because they affect both your party and your foes.

Link to post
Share on other sites

4. The modding suite works for me. 
Tips: Start small. Cut your teeth with minor changes to creations and items, then adjusting dialogue, perhaps adding a small quest based on existing people etc. 

 

2. You can but it is more complicated than simply changing the movement from 0. You have to adjust the sprites for movement etc. 

 

 

Edited by alhoon
Link to post
Share on other sites

Excellent, thanks for the prompt replies, and the overall good news. I can't lose my sanity if I already discarded it.🥴

I have done a number of minor changes, this is the prelude to me doing potentially massive changes to confound and entertain myself and others, one step at a time. Weirdness is already included, I plan on abusing the aforementioned invisible sprite issue for a thematic invisible creation for example.

 

Almost forgot, what is the file with the ability names? I can't seem to find it.

Edited by MadCreator
Link to post
Share on other sites

Ignore what I had here before, I figured out how to make unmoving creations move and managed to butcher some ruined world sprites enough to make them work, though not perfectly as I don't have the patience. Still, it lets me give you guys some crazy creations so it was worth it. 😁

 

In more good news, I have found Diablo 2 sprites and some others can be fairly easily modified to work with Geneforge! I'm going to stop bothering you all with the sprite insanity now though, as my original plans did not include sprite modification or importing at all and I've spent days not doing what I set out to do in the first place. 😩 I won't post or edit again until I have reasonable, legitimate questions or I've completed something tangible to show off, sorry again for the edit spamming.

Edited by MadCreator
Link to post
Share on other sites

Ending/intro/quest text is located directly in the game's executable. I would use a hex editor like Hexplorer, find where the text is located, and manually change it.

 

The Geneforge Modding Suite (fair note, at the moment it's just a zone editor, item creation or other script things will be added at some point in the future) needs Java to run. It's important to run it using the batch file (run.bat) so you can see any errors and also because the first time you run it you need the console it produces to enter your Geneforge 5 folder location.

Link to post
Share on other sites

Be forewarned -- some versions of the games have checksums implemented, so you may or may not be able to run the executable after making that modification.

 

Also, for a few reasons, distributing a modified version of the Geneforge executable itself would be very different from distributing modified text or image files that people can drop into the scripts folder as they prefer (or a completely independent program like TheKian created).  I'm not sure how much that would or wouldn't impede sharing your mod publicly, but it's somewhere between "extra hurdle" and "brick wall", inclusive.

Link to post
Share on other sites
59 minutes ago, "Nothing Left" said:

Be forewarned -- some versions of the games have checksums implemented, so you may or may not be able to run the executable after making that modification.

 

Also, for a few reasons, distributing a modified version of the Geneforge executable itself would be very different from distributing modified text or image files that people can drop into the scripts folder as they prefer (or a completely independent program like TheKian created).  I'm not sure how much that would or wouldn't impede sharing your mod publicly, but it's somewhere between "extra hurdle" and "brick wall", inclusive.

For the record, I'm planning on making a feature with my modding tool that will allow you to patch (or unpatch) a Geneforge executable with a file containing quest information to make releasing mods like that legal. The GOG version of Geneforge 5, at least, doesn't seem to have a checksum, although I don't know about the Steam version.

 

But until such a thing is available, the only way you'd be able to (legally) release a mod that edits the executable would be to make a patcher yourself.

Link to post
Share on other sites

Mods in the form of patches are not illegal, but they also aren't categorically legal:

https://en.wikipedia.org/wiki/Unofficial_patch#Law

e.g. Square Enix famously managed to shut down an ambitious fan mod of Chrono Trigger about a decade ago.

 

Spiderweb might be perfectly happy with these projects (and I can't imagine them turning to lawyers over them), but I would definitely recommend seeking their blessing, if nothing else, before posting them here.

Link to post
Share on other sites
3 hours ago, "Nothing Left" said:

Be forewarned -- some versions of the games have checksums implemented, so you may or may not be able to run the executable after making that modification.

 

Also, for a few reasons, distributing a modified version of the Geneforge executable itself would be very different from distributing modified text or image files that people can drop into the scripts folder as they prefer (or a completely independent program like TheKian created).  I'm not sure how much that would or wouldn't impede sharing your mod publicly, but it's somewhere between "extra hurdle" and "brick wall", inclusive.

I am pretty sure it is illegal to post a modified executable. 
Posting a patch is... gray-area-but-better-don't-touch. 

Edited by alhoon
Link to post
Share on other sites

I don't plan on going so far as to step on anyone's toes, especially not the creator of my two favorite game series bar none, and I want as many people to enjoy my mods as possible so I won't touch messing with the executable/ patches. I'll simply post my intro/quest/ending etc. changes in a document people can read posted with everything else.

 

To finish up my questions on immutable game aspects (without a hex editor or such) am I right in assuming spell and class names as well as items descriptions also fall into this category?

 

Also, of wands, crystals and rods, are there any you guys are particularly attached to or inversely feel are useless? I hardly ever use them and was thinking of replacing one or two of them with something more interesting/useful. I'm asking because I just don't like consumables and usually play creation users on normal, unlike many of you who play torment and such so I don't want my mod to change something vital to survival.

 

I also feel like combat focused characters get the shaft in the last couple games and would like to buff them. What kinds of tools/support would you suggest to help? I already plan on some better weapons and unlimited ammo range weapons, as alhoon's  and TheKian's glorious mods inspired me,  but is there anything else you guys might like to see?

Link to post
Share on other sites

Class names would be a herculean effort to change, even with raw data editing.

 

Spell names (and item descriptions, IIRC -- but this has changed in different SW games) can easily be edited in the defs files.  For spells in particular, note that the spell name and the corresponding spell-knowledge name (i.e., you have 2 levels in Firebolt, and you cast Firebolt in battle) are in 2 different places.

 

Definitely agree with you about consumables.  Torment players are more likely to be serious optimizers and that definitely correlates with avoiding the use of consumables on anything that's not the hardest battle in the game.  It seems to me that consumables are typically used a lot more by casual players, who are less dedicated to optimizing.  But consumables are useful to those players precisely because they have a completely different curve of useful vs. useless than more balanced game elements.  So I think the question is, who's the target audience for your mod?  You can always leave some consumables in the game, and turn others into stuff you like more.

Link to post
Share on other sites
54 minutes ago, "Nothing Left" said:

Class names would be a herculean effort to change, even with raw data editing.

 

Spell names (and item descriptions, IIRC -- but this has changed in different SW games) can easily be edited in the defs files.  For spells in particular, note that the spell name and the corresponding spell-knowledge name (i.e., you have 2 levels in Firebolt, and you cast Firebolt in battle) are in 2 different places.

 

Definitely agree with you about consumables.  Torment players are more likely to be serious optimizers and that definitely correlates with avoiding the use of consumables on anything that's not the hardest battle in the game.  It seems to me that consumables are typically used a lot more by casual players, who are less dedicated to optimizing.  But consumables are useful to those players precisely because they have a completely different curve of useful vs. useless than more balanced game elements.  So I think the question is, who's the target audience for your mod?  You can always leave some consumables in the game, and turn others into stuff you like more.

Ability names can be changed in the definitions, but the names in the actual spell selection GUI seem to be hardcoded into the executable. Changing the name of an ability just seems to change the name in the text box when you select the spell (i.e. Firebolt: Select an target).

 

9 hours ago, MadCreator said:

I don't plan on going so far as to step on anyone's toes, especially not the creator of my two favorite game series bar none, and I want as many people to enjoy my mods as possible so I won't touch messing with the executable/ patches. I'll simply post my intro/quest/ending etc. changes in a document people can read posted with everything else.

 

To finish up my questions on immutable game aspects (without a hex editor or such) am I right in assuming spell and class names as well as items descriptions also fall into this category?

 

Also, of wands, crystals and rods, are there any you guys are particularly attached to or inversely feel are useless? I hardly ever use them and was thinking of replacing one or two of them with something more interesting/useful. I'm asking because I just don't like consumables and usually play creation users on normal, unlike many of you who play torment and such so I don't want my mod to change something vital to survival.

 

I also feel like combat focused characters get the shaft in the last couple games and would like to buff them. What kinds of tools/support would you suggest to help? I already plan on some better weapons and unlimited ammo range weapons, as alhoon's  and TheKian's glorious mods inspired me,  but is there anything else you guys might like to see?

 

Specifically concerning Geneforge 5, since it's the game where the best information for modding exists:

 

The stuff you could actually edit in the executable without doing some questionably legal shenanigans to decompile and recompile the program are, in order (with the things you listed that you wanted to know in bold):

Various error messages

List of image codacs?

Month abbreviations

More image codacs?

More error messages

A bunch of stuff specifically related to... cameras?

More errors/confirmation messages

Combat messages

Misc messages

Spell messages

Zone messages

Price categories

Instructive messages

More combat messages

Loading screen messages?

More misc messages

Cheat codes

Option text

Difficulties

Creature creation

Character sheet text

Shop/trainer text

Assorted errors

Item descriptions

More combat messages

More errors

Creation descriptions

Creation tutorial

Class descriptions

Skill names

Spell names

Skill descriptions

Spell descriptions

Quit messages

Special item names

Special item descriptions

Other instructive messages

Help book

GUI Description of Spells

Quest names

Quest descriptions

Loading screen messages

Intro text

Death text

End text

More item descriptions

More spell names and descriptions

More end text

Link to post
Share on other sites

Excellent list, thank you, very useful to know for sure! Yeah I noticed when I tried to change the spell names it didn't change them in spell selection. As far as the consumable items go, I'm thinking something akin to Avadon scarabs, though I'd have to be careful with that as I can't give them cooldowns like Avadon does, and rapid fire repeated attack items would probably get out of hand fast. I'll probably leave crystals alone and mess with rods and wands.

Link to post
Share on other sites
5 hours ago, TheKian said:

Ability names can be changed in the definitions, but the names in the actual spell selection GUI seem to be hardcoded into the executable. Changing the name of an ability just seems to change the name in the text box when you select the spell (i.e. Firebolt: Select an target).

 

Huh, I stand corrected!  Avadon, the Avernum Remakes and on definitely do make it possible to edit those in the scripts, but I guess Geneforge doesn't.

 

Doesn't changing the name of the ability also affect the tooltip for the spell (and for any items that use that ability)?  That's really what I'm remembering (not the spell selection dialogue box) so if I'm wrong about that then I really gotta question my recollection.

Link to post
Share on other sites
7 hours ago, "Nothing Left" said:

 

Huh, I stand corrected!  Avadon, the Avernum Remakes and on definitely do make it possible to edit those in the scripts, but I guess Geneforge doesn't.

 

Doesn't changing the name of the ability also affect the tooltip for the spell (and for any items that use that ability)?  That's really what I'm remembering (not the spell selection dialogue box) so if I'm wrong about that then I really gotta question my recollection.

I'm not entirely sure what you mean by the tooltip, but the only thing I have seen that gets changed is in the text box. Spell descriptions and spell names in the GUI are hardcoded into the executable. For example, in one of my private mods, I changed lightning aura (since it's useless) to a spell called plasma lances, which showed the different name in the text box but remained the exact same (excepting the different essence/energy cost) in the GUI. It's relatively easy to modify in the executable, but I'm 99.99% sure anything in the GUI outside the dialog box is hardcoded.

 

If I were to guess, perhaps (I haven't played any Spiderweb games outside Geneforge, disclaimer) since there are those official Blades of _______ thingies, the other games were designed to be more modifiable?

Link to post
Share on other sites

I don't think the other games were designed to be more modifiable -- I suspect that was just Jeff gradually making things more modular as he put more and more games out using similar data structures.

 

Aha, I think what I've forgotten is just that Geneforge doesn't have those tooltips.  They became so ubitquitous in later games, I completely missed that!

Link to post
Share on other sites

I'm currently redesigning most of the creations and a good chunk of items and have a few more questions.

 

Is there any way to make weapons two-handed? (I know it's a long shot but figured I'd ask)

 

Is there some list of effects on death? Wondering because the dozen or so used are numbered so sporadically, but the random couple of numbers I tried outside those had no results.

 

Is there any way to get retaliation effects innate on creatures, thorny aura style? I swear I've seen it, but maybe I'm thinking Avernum.

 

Does vampiric touch actually do nothing like my brief tests indicate or am I missing something?

 

Just trying to make unstable/grossly overpriced creations interesting/ actually useful (seriously wth magic shaping in general?! Charged Vlish especially makes me nauseous.)

 

Edited by MadCreator
Link to post
Share on other sites
9 hours ago, MadCreator said:

I'm currently redesigning most of the creations and a good chunk of items and have a few more questions.

 

Is there any way to make weapons two-handed? (I know it's a long shot but figured I'd ask)

 

Is there some list of effects on death? Wondering because the dozen or so used are numbered so sporadically, but the random couple of numbers I tried outside those had no results.

 

Is there any way to get retaliation effects innate on creatures, thorny aura style? I swear I've seen it, but maybe I'm thinking Avernum.

 

Does vampiric touch actually do nothing like my brief tests indicate or am I missing something?

 

Just trying to make unstable/grossly overpriced creations interesting/ actually useful (seriously wth magic shaping in general?! Charged Vlish especially makes me nauseous.)

 

1. No, weapons cannot be made 2-handed.

2. Looking at them, I believe death effects (as defined by cr_effect_when_slain in the creature scripts) are just visual effects, corresponding to begindefinesfx ### in the objsmisc definitions file. Possibly means they are hardcoded in for particular creations, like being unstable.

3. Runewarded Thahds in G4 certainly had effects on you when you hit them, but if I were to guess they're script-based instead of definition-based. The zone script set them to have some ability, but it doesn't correspond to any abilities in the definitions file, so I would guess they have a custom creature script set in the scenario file.

4. Never used vampiric touch, but looks like it doesn't work according to Randomizer.

5. You can certainly improve creations (increase health, base level, give bonuses to some stats [although basic attributes can't be changed], improve attacks, etc.), but you cannot make unstable creations not unstable - that's hardcoded. Frankly, having creations that cannot even leave a zone is so entirely worthless that I can't imagine much that could make them useful.

Link to post
Share on other sites

I'm aware you can't make creations stable and also think they suck and are useless, I'm just hoping to make them bizarre enough someone might get a kick out of them. Death effects work and can be added to creations, I added the pulsating rat death effect to a fyora and it poisoned everything around it when it died, I just can't find where the death effect definitions were coming from and hoped someone knew. I will have to check out the runewarded thahds. Sadly probably not useful though.

Link to post
Share on other sites

Looking through the sfx (gf5objsmisc.txt) definitions, it actually looks like those do govern the death effects. The rat has a death effect number 84. If we go to begindefinesfx 84, we find this:

begindefinesfx 84;     

    sfx_amount_of_effect = 100;

 

Which inherits from these:

begindefinesfx 80;

    import = 50;

    sfx_graphic_sheet = 1;

    sfx_sfx_sound = 165;

begindefinesfx 81;

    sfx_sfx_effect = 3;

    sfx_amount_of_effect = 10;

 

If we go look at searer (which poisons in G5 for some reason), its status effect type is 3, which matches the effect of the pulsating rat. The import of 50 is the base for 'exploding stuff' and uses template 41. Graphic sheet 1 means the graphics are G1411.bmp, which is the poison explosion effect. So it looks like the sfx definitions are what controls death effects.

 

Also, if you can find somewhere in Geneforge 5 where there are things like runewarded thahds that cause some effect when being hit, I can look through all the relevant data for them to try to figure out where the effect comes from.

Edited by TheKian
Link to post
Share on other sites

Now that is interesting, I hadn't realized, potentially useful.

 

I believe the warded gamma in the western wastes has the ability, listed in the zone modifications as set_new_abil(13,3);. The Runewarded Thahds from G4 had set_new_abil(12,1); set_new_abil(13,2); and set_new_abil(14,8); so that checks out. I just don't know if it's even possible to give a zone scripted ability to a creation in gf5itemschars. I ran into the same problem when I was looking into being able to make a creation that shapes like a spawner which are also zone specific. Retaliation damage seems simpler then spawning though, so maybe you can figure it out. I'd certainly use it if you did.

 

If nothing else, I figured out how to give creations attacks that apply auras to your party on hit (essence enhancements too, but those apply to whoever you hit with the attack 😅)

Edited by MadCreator
Link to post
Share on other sites

Okay, so the warded gamma has the mobgroupgd script which obviously doesn't have any reactive abilities, so the zone script is the most likely source. I suspected set_new_abil to be the most likely culprit (based on the Runewarded Thahds), but couldn't find anything defining that ability. It does, however, definitely confirm that you can't bake anything like that into a creation. It is possible that what you could do is go in a loop through the party members, and if any of them is creature type <whatever creation it is>, use set_new_abil on them, and put that in every single zone script.

 

My best guess is that those abilities are somehow hardcoded. They definitely do not correspond to abilities defined in gf5objsmisc.txt, and they don't correspond to whatever hardcoded ability types are referred to in the ability definitions by ab_abil_type = #. It kind of makes sense that they'd be hardcoded, because all the more complicated effects (how protection works, how regeneration works, how speed works, etc.) are all hardcoded too.

Link to post
Share on other sites

Those fancy set_new_abil() that are seen on enemies are zone scripted; can't be given to a creation by default. You have to basically use them in a zone. Trying to use them in the gf5itemschars won't work. Spawner creations, you'll have to use the Zone Simulator to make that work. 

Yeah Geneforge isn't really the most easy to mod game out there, believe me. Although that could be because messing with zones via Zone Simulator is hard; I recalled being able to do so on Mac with some alterations, but I have forgotten how to do it now on Mac. It's been too long; if someone is on Mac and can mess around with hex data & the zones, and has been able to make Zone Simulator work on Mac, please let me know. Either that, or someone's had time to make zone editing and such less headache inducing...

 

I do have a list of what Set_new_abil modifications adds which new perks to creatures. 

 

Counter abilities are ones where if an enemy attacks this creature with a melee attack, the enemy will gain a status effect immediately after doing so. Only works for melee attacks, if it lands. Has no effect on ranged attacks.

set_new_abil(1000,1); Curse Counter

set_new_abil(1000,2); Slow Counter

set_new_abil(1000,3); Acid Counter

set_new_abil(1000,4); Poison Counter

set_new_abil(1000,5); Charm Counter

set_new_abil(1000,6); Terror Counter

set_new_abil(1000,8); Spike Counter (Simply damages the enemy)
 

Strike abilities are where the creature's melee attacks are augmented to have a status effect inflicted on an enemy if it lands. You can combine these with status effect attacks in the gf5objsmisc script, where you can have melee attacks be able to cause two status effects at once. Only works with melee attacks, no effect on ranged attacks.

set_new_abil(1000,10); Poison Strike

set_new_abil(1000,11); Acid Strike

set_new_abil(1000,12); Fear Strike

set_new_abil(1000,13); Charm Strike

set_new_abil(1000,15); Slow Strike
 

This one is special because once you assign a creature with this ability, it gains a bunch of extra action points. I don't remember the exact number, but I think it was 4-5 extra APs. Basically creatures with this ability can still move pretty far and still be able to shoot twice.

set_new_abil(1000,20); Extra Action Points
 

bless_char basically makes it so that the creature it is applied to has all three of the essence enchantments in the game. Essence Armor, Essence Blade, Essence Infusion, all at the same time. Normally you can only get one enchantment at a time, but bless_char allows creatures to have all three at once.

bless_char(1000,2); All Essence Enchantments

 

To use these abilities, simply replace the 1000 with whatever the creature's zone number is, then put it into the script. That creature should have that ability. Do note that this also works with creatures that are capable of joining you. Companions can gain these abilities if you put it into the script. Also, these abilities also work for the player character itself, by simply putting in pc_num() in place of the 1000.

Edit: I faintly recall that I did use the Wineskin program to try and get the Zone Simulator to work. Being honest, it's been far too long since I've done modding for Geneforge; I wish it wasn't so annoying to mod, but considering it's an old game, it's understandable.

Edited by Gameman112358
Link to post
Share on other sites
20 hours ago, Gameman112358 said:

*snippity snip*

Do you know if you can apply those effects to party members? I imagine you would be able to, but the question remains of whether those effects are tied to the creature itself or are limited to the zone where it's applied.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...