Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Temple+ Modding Discussion

SwingBlade

Educated
Joined
Sep 4, 2016
Messages
85
You da bomb, Sitra. \o/

By the way, some of the changes you're making are to allow others the tools to mod, aye? I was wondering if you might have considered putting together a GUI that would allow for that, while doing the backend scripting itself? Or would something like that even be realistically feasible?

I guess my ultimate question is, how does one go about using the tools you're developing?
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
You da bomb, Sitra. \o/

By the way, some of the changes you're making are to allow others the tools to mod, aye? I was wondering if you might have considered putting together a GUI that would allow for that, while doing the backend scripting itself? Or would something like that even be realistically feasible?

I guess my ultimate question is, how does one go about using the tools you're developing?
Temple+ extends what's moddable by exposing various systems to the Python scripting, which is more accessible to modders/scripters than the C++ code.

Unfortunately I don't think it lends itself to GUI-based modding, and honestly I'd rather spend my time on other things.

I've started documenting the new facilities in the Github wiki if you're interested:

https://github.com/GrognardsFromHell/TemplePlus/wiki/Modding
 

SCO

Arcane
In My Safe Space
Joined
Feb 3, 2009
Messages
16,320
Shadorwun: Hong Kong
As long as there is not a way to extend npc scripts and tables seamlessly (a WEIDU - install time - or whatever bethesda uses - runtime) i never expect a game modding community to take off beyond megamods.

And if a weidu happens, i oftentimes wish that the people that did it - or the official companies, for ex Beth - were prevident enough to foresee the need for a mod order and dependency expert system like mlox... or like apt-get for linux (they're actually very similar technologies with the addition that apt also has a repository/install function and is not as sophisticated in 'ordering' and blacklisting).
Forces the stupid mod makers to put in version numbers and list dependencies with version again, forces them to structure the mod archives with a standard directory structure so it's just drag and drop(or unzip if unsophisticated, though that can be remediated with OS level filesystem plugins... in linux anyway). And not least, forces them not to use godawful installers.


I'm still waiting for temple+ to be bundled in to a new Co8 release btw.
 
Last edited:

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
As long as there is not a way to extend npc scripts and tables seamlessly (a WEIDU - install time - or whatever bethesda uses - runtime) i never expect a game modding community to take off beyond megamods.

And if a weidu happens, i oftentimes wish that the people that did it - or the official companies, for ex Beth - were prevident enough to foresee the need for a mod order and dependency expert system like mlox... or like apt-get for linux (they're actually very similar technologies with the addition that apt also has a repository/install function and is not as sophisticated in 'ordering' and blacklisting).
Forces the stupid mod makers to put in version numbers and list dependencies with version again, forces them to structure the mod archives with a standard directory structure so it's just drag and drop(or unzip if unsophisticated, though that can be remediated with OS level filesystem plugins... in linux anyway). And not least, forces them not to use godawful installers.

That problem has been solved in the ToEE modding community by not being very sizable :P

I'm still waiting for temple+ to be bundled in to a new Co8 release btw.

Yeah, I've made the offer to Co8 and they just ignored it. Oh well.

As it is Temple+ is compatible with Co8, including Co8 detection and overriding the necessary files depending on that.

They don't update often anyway these days (or rather at all...) so it's good enough as far as I'm concerned. If you're still bothered by it, I recommend petitioning them.
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
How do you change a class spell readying type from vancian to innate?
To do so you need to edit the class specification files. You can find them inside your Temple+ installation folder:

C:\Users\<YOUR WINDOWS USERNAME>\AppData\Local\TemplePlus\app-1.x.xx\tpdata\
From there you need to extract tpgamefiles.dat, and edit the appropriate file from rules\char_class. For a spellcasting class, just change the return value under GetSpellReadyingType from spell_readying_vancian to spell_readying_innate.

Then you should put the modded file inside the override folder so it doesn't get wiped out on the next update. See instructions here:

https://github.com/GrognardsFromHell/TemplePlus/wiki/Modding

(the above wiki also contains some WIP documentation on modding for Temple+ btw)
 

Kharagh

Novice
Joined
Jun 3, 2016
Messages
7
Thanks for all the great improvements. Recently, however, spells that I had removed from classes have returned. For example, I have removed sor & wiz from all the summon monster spells in my data/rules/spells folder but now (due to some post-September update) those show up as wizard spells in-game. Is there a new file that I should be modifying to remove spells from particular classes?
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
Thanks for all the great improvements. Recently, however, spells that I had removed from classes have returned. For example, I have removed sor & wiz from all the summon monster spells in my data/rules/spells folder but now (due to some post-September update) those show up as wizard spells in-game. Is there a new file that I should be modifying to remove spells from particular classes?
Yes, you need to use the overrides folder since I've altered the rules\spells files (inside co8fixes.dat). Spells with multiple radial options now have them specified inside the rules files.
See the Temple+ modding wiki page for more info.
 

Dercik

Novice
Joined
Apr 21, 2016
Messages
19
Sitra Achara
Can you Please add FEAT that make SELECTED SKILL CLASS SKILL?

(like "trickery domain" feat make "bluff" skill for cleric class skill)
If you added "Favoured Soul" class - why not this single feat?
 

Elestan

Educated
Joined
Nov 8, 2016
Messages
99
Come on, folks...he's one guy, and he's probably got 300 feature requests - And binary modding is HARD. Don't get on his case for not getting any particular feature yet.
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
You said the magic word ;) To get you started, see here.

There are some difficulties with doing this feat, however.
First off you have to make the engine poll whether a character has a special Modifier that alters class-skills. That's the easy part and I can add it right away, and then you'll just have to create a Python Modifier that answers the call .d20_query_with_args("Is Class Skill", skill_x) or something like that.

The tricky part is that since there are many skills, you're going to want the UI to support multiselection (otherwise you'll have to add a feat for each skill and clog the list). That sort of thing is currently hardcoded to specific feats (such as Weapon Focus), so I'll have to extend it and expose to the levelup scripting API.

The other thing is you'll also probably want to disable the ones for skills that are already class skills, so you'll need custom logic API for enabling/disabling feats.

Both of these items require non-trivial changes to the engine which weren't a priority or a necessity so far. But since you said the magic word, I'll kick it up the queue :)
 

Dercik

Novice
Joined
Apr 21, 2016
Messages
19
Hmm.. I thought that there is a "source code" for trickery domain, which would be then matter of simple file editing, without having to write script from scratch for "class skill" feat.
I might try to do this in my free time, since I have some modding experience in many games.

The tricky part is that since there are many skills, you're going to want the UI to support multiselection (otherwise you'll have to add a feat for each skill and clog the list). That sort of thing is currently hardcoded to specific feats (such as Weapon Focus), so I'll have to extend it and expose to the levelup scripting API.

I can live with spam in feat list :).

The other thing is you'll also probably want to disable the ones for skills that are already class skills, so you'll need custom logic API for enabling/disabling feats.

Well - not necesarilly - it might be helpful when multiclassing.


However, your post gave me another suggestion - making variants of classes.
http://www.d20srd.org/srd/variant/classes/variantCharacterClasses.htm

But instead of making separate class there could be separate "quasifeats", which would include "class skill" feat code, and use f.e. UI where you choose ranger specialization (archery or dual-wielding).
That way you could avoid breaking immersion and necessity to correct dialogues and other event triggers, which require specific class (like f.e. with Melanie where you have to be Druid in order to recruit her).
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
Hmm.. I thought that there is a "source code" for trickery domain, which would be then matter of simple file editing, without having to write script from scratch for "class skill" feat.
I might try to do this in my free time, since I have some modding experience in many games.
Domains are entirely hardcoded, like many other things in ToEE.

So yeah, if you forego the above issues it should be pretty easy. You'd have to create feat entries for each skill, and make a hook that answers a D20PythonQuery as I mentioned.
It should look like this:

Code:
from templeplus.pymod import PythonModifier
from toee import *

def FeatClassSkill(attachee, args, evt_obj):
   skill_enum = args.get_param(0)
   if evt_obj.arg0 == skill_enum:
       evt_obj.return_val = 1
   return 0

class_skill_appraise = PythonModifier('Class Skill Feat Appraise', 0)
class_skill_appraise.MapToFeat('Class Skill - Appraise')
class_skill_appraise.AddHook(ET_OnD20PythonQuery, "Is Class Skill", FeatClassSkill, (skill_appraise,))

class_skill_bluff = PythonModifier('Class Skill Feat Bluff', 0)
class_skill_bluff.MapToFeat('Class Skill - Bluff')
class_skill_bluff.AddHook(ET_OnD20PythonQuery, "Is Class Skill", FeatClassSkill, (skill_bluff,))

... etc ...

However, your post gave me another suggestion - making variants of classes.
http://www.d20srd.org/srd/variant/classes/variantCharacterClasses.htm

But instead of making separate class there could be separate "quasifeats", which would include "class skill" feat code, and use f.e. UI where you choose ranger specialization (archery or dual-wielding).
That way you could avoid breaking immersion and necessity to correct dialogues and other event triggers, which require specific class (like f.e. with Melanie where you have to be Druid in order to recruit her).
Well I do plan on doing class kits at some point, I think they should address such things.
 

sseymour

Barely Literate
Joined
Nov 9, 2016
Messages
3
I am not a computer programmer, but do have degrees in engineering. If someone can send me the script for the sorcerer class, I would gladly see if I can edit/modify it to be a favored soul for someone to test out.

Also, practiced spellcaster would be a cool feat to add, as would to add in the warlock as a base class.
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
I am not a computer programmer, but do have degrees in engineering.
That's all it takes from my experience ;)

If someone can send me the script for the sorcerer class, I would gladly see if I can edit/modify it to be a favored soul for someone to test out.
Favored Soul is already done for next version, so maybe you'd like to do another class? What's the equivalent for Druids?
For info on modding, check out the Temple+ Modding thread.
 

Dercik

Novice
Joined
Apr 21, 2016
Messages
19
Are there maybe other DAT packing/unpacking tools?

Beside:
Tiopack
DATtool
Zane's ToEExtract v1.05

First 2 don't work on my system (win 8.1) and last one only allows me to unpack dat files but not pack them.
 

Dercik

Novice
Joined
Apr 21, 2016
Messages
19
Sitra Achara
Thank you. :)

I have one question - does this "mod" have to be packed in dat.file or it should work "unpacked" (I mean copied and pasted into right folders)?
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
Are there maybe other DAT packing/unpacking tools?

Beside:
Tiopack
DATtool
Zane's ToEExtract v1.05

First 2 don't work on my system (win 8.1) and last one only allows me to unpack dat files but not pack them.
I'm on a Win10 machine and have no problem with packing. Do you have the necessary DLLs in the same folder?
Anyway I've updated OP with TioPack.zip, let me know if it works for you.
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
Sitra Achara
Thank you. :)

I have one question - does this "mod" have to be packed in dat.file or it should work "unpacked" (I mean copied and pasted into right folders)?
You don't have to pack it into dat. You only have to ensure that your alterations take precedence in the search path (or alternately use the file extenders if possible). See the wiki section on files for more info.
 

sseymour

Barely Literate
Joined
Nov 9, 2016
Messages
3
That's all it takes from my experience ;)


Favored Soul is already done for next version, so maybe you'd like to do another class? What's the equivalent for Druids?
For info on modding, check out the Temple+ Modding thread.

OK, so Favored Soul is done, I wouldn't mind taking a stab (blast?) at warlock. Can someone point me in the direction of a template for a class, like sorcerer or wizard? I can look up the required info for warlock from my complete arcane at home and figure out invocations could be possibly added....

I'd think eldritch blast would be similar to any ray spell with an unlimited usage. Animations could be used from existing spells (scorching ray / ray of enfeeblement / acid touch) for the base and modified eldritch blasts.

DR/cold iron - I know DR/silver DR/good etc, are in, not sure if anyone HAS cold iron weapons in the game currently.

...... and so on and so on...
 

Sitra Achara

Arcane
Joined
Sep 1, 2003
Messages
1,859
Codex 2012 Codex 2013 Codex 2014 PC RPG Website of the Year, 2015
OK, so Favored Soul is done, I wouldn't mind taking a stab (blast?) at warlock. Can someone point me in the direction of a template for a class, like sorcerer or wizard? I can look up the required info for warlock from my complete arcane at home and figure out invocations could be possibly added....

I'd think eldritch blast would be similar to any ray spell with an unlimited usage. Animations could be used from existing spells (scorching ray / ray of enfeeblement / acid touch) for the base and modified eldritch blasts.

DR/cold iron - I know DR/silver DR/good etc, are in, not sure if anyone HAS cold iron weapons in the game currently.

...... and so on and so on...
I've added some documentation on the Wiki just for you :)
https://github.com/GrognardsFromHell/TemplePlus/wiki/Python-Class-Definitions
 

sseymour

Barely Literate
Joined
Nov 9, 2016
Messages
3
Really dumb question, but how do I open the .dat files in Win10? I tried the TOEE extract utility and DATtool, both didn't work for me - they wouldn't even load.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom