|
journeyman
|
OP
journeyman
Joined: Aug 2017
|
Hello to modders ; I am thinking of updating scripts for hardcore game play. Project of adding mercenary camp to hire henchmans for gold & Permenant dead balancing. If there are modders who want to create a huge mod i can be in it too. I worked on 2 days on modding for this game and made a mod so you can test it down below. Also thinking of a new race called Necromorph race for skills of polymorphing and summoning abilities in my test mod later. http://www.nexusmods.com/divinityoriginalsin2/mods/7/?Looks like this game will have a high potential on modding with that stunning graphics at naive resolutions like 3840x2160. Lets come to the mod opinions and Scripting changes ; 1- On Dying and ghost tag scripts can be changed. Party members can die permenant after taking deadly injuries (will add permanent negative status effects at first time they fall on battle field and set dead tag to unconsious state for 3 turns and if they will not be healed in 3 turns then they will die at battlefield permenant. So they need to be healed before they can reach true dying. However when they are healed they will get permenant random injury and base vitality debuff. If they get 3 deadly injuries then 4.time they will die if they fall. 2-Revive scrolls will be changed to heal one of permenant injury on a henchman or hero. 3-If your Hero dies then game will popup load screen of course  4-In Henchman Camp/Inn you can hire and give salary for the avaliable heros of your choice at the moment with a storing reputation point by 2 variables like if you get killed too many of them then some of hencmans will not join you or will not be avaliable or take more gold for payday time. Also those reputation points can upgrade your camp's features in later game like armors/weapons/skills exc. Of course experienced henchmen will not be cheap [time counter for a dialog to payday feature so if you want to continue with your henchman then you have to pay at that time or persuade him to pay another day however that will effect your camp reputation.] Second If you pay them at their pay day and give them extra gold also giving extra gold in dialog menu will boost your men at battles with a new timely morale effect. 5-I was making game balance feature to the next level on this kind of games by removing auto vitality-damage level up features as you can test in the mod but its still in beta. I belive this can bring more reality and improve overhall playing feature. As your level can only effect your weapon / skill / accuracy usage with small limits so even a level 1 creature still can beat you up or reversal as you have a chance to beat high level creatures (lets say experienced). Of course with tactics you can beat anything in any game. I am waiting for good modders to work together or to merge with other ideas to create greater projects.
|
|
|
|
old hand
|
old hand
Joined: Aug 2014
|
I've created a death saving throw system somewhat like your suggestion that works pretty much like how death works in DND 5th edition. When you "die" you have 50% chance to make a saving throw (may make constitution influence this, like you have a 40% chance to succeed + 1% * your Constitution). If you succeed three times, you get resurrected to 5-10% health, but if you fail three times you're permanently dead. The idea of permanent injuries is interesting. Would be best if they depended on how you died. Like if you die by fire, you gain a penalty to fire resist or something. How my save system currently works is below. I'm not sure about mercenaries. There may be hireables in the game, so I'll have to wait and see what happens there before I can start thinking about that. I like the idea of mercenaries charging more if you let too many of them die though. I saw your vitality changes on your mod. Interesting idea, have to see how that plays. I like the idea of levels having a smaller effect on challenge rating, both against high level and lower level enemies. Death Save System EVENT DeathSaveInit
VARS
ON
OnDie(__Me,_,_,_)
ACTIONS
IF "c1"
CharacterIsInParty(__Me) // only players attempt death saves
THEN
StartTimer("DeathRecovery",10,0) // attempt to save every 10 seconds
ENDIF
EVENT DeathSavesThrow
VARS
ON
OnTimer("DeathRecovery")
ACTIONS
IF "c1"
IsRandom(.50) // if this is true, then you are saving succesfully
THEN
IF "c1"
IsEqual(%DeathSaves,2) // if you've saved twice already, then you resurrect
THEN
CharacterResurrect(__Me,5)
Add(%DeathSaves,1)
ELIF "c1"
IsLessThen(%DeathSaves,2) // otherwise, just add a success to the variable
THEN
Add(%DeathSaves,1)
ENDIF
ELSE
Add(%DeathFails,1) // if the IsRandom above isn't true, than it's a fail, and you bleed
CreateSurfaceAt(__Me,SurfaceBlood,1,1,__Me)
ENDIF
IF "c1&c2"
IsLessThen(%DeathSaves,3) // if you haven't saved or failed three times, start the timer again
IsLessThen(%DeathFails,3)
THEN
StartTimer("DeathRecovery",10,0)
ELIF "c1|c2"
IsGreaterThen(%DeathSaves,2) // If you have died permanently or been rezzed, reset saves and fails to 0
IsGreaterThen(%DeathFails,2)
THEN
Set(%DeathSaves,0)
Set(%DeathFails,0)
ENDIF Currently this doesn't check for combat, so this will save over the course of a turn if you wait long enough. I think it's a bit tough to check if the character is in combat, since you can't be in combat if you're dead. It may need to iterate on characters nearby to see if they are in combat. When a character leaves combat, they will iterate on nearby characters, and if a dead character is nearby, they will then iterate themselves to check if combat is going on nearby from some other character or something, and then they will iterate on nearby characters again. To make the saves work in combat, it would have to take into account rounds, which would be slightly clunky since there's no "OnRound" check. Something like, when you die, note the round, and then on each character turn, take note of the round, and if a round has passed, then you make a save. So yeah, it's kind of complicated how I'm doing it. Maybe you can figure out an easier way? I assume you've seen this thread for all the character scripting commands? http://larian.com/forums/ubbthreads.php?ubb=showflat&Number=605357#Post604994Also if you want to create a new race, you can create a new race preset which can even reference a whole new root template, though probably there won't be any races that will have all the armor models and stuff, and you'll have to reuse one of the other races for dialog tags.
Last edited by Baardvark; 13/08/17 03:15 AM.
|
|
|
|
journeyman
|
OP
journeyman
Joined: Aug 2017
|
Hello Baadvark, Then You should look at those scripts to iterate maybe you can workout directly inside the scripts. without adding new one and simpilize the codes (Not sure ? ); SCROLL_SCROLL_Resurrect_1.charScript (For changing Ressurect scroll ? ) GLO_Ghost.charScript,GLO_GhostOnDeath.charScript,GLO_PlayEffectOnDeath.itemScript( for unconsiouness adding ?) GEN_Follower.charScript ( Remove dead from party ? ) Also we need to remove the died henchmen auto from party. I have nearly finished auto lvl up vitality feature in mod however there can be some creatures that are needed to be touched yet. Also if you want you can merge your bard mod with that one and you can publish it. You can create a new race called NecroMorph and add the skills there with for elf root template or maybe we can use another creature but many of them doesn't show some armor kinds.So have to look which one. Also I balanced the skills in later version to be more challenging if you will become a god then you should have some different skills from others for single play. Before talking about our project I want to say that ideas of course now coming directly to my mind as i am an experienced player with age of 40.Mercenary camp system idea is from a little Jagged Alliance series , Injury idea is from Tyranny or other kind of games (Many of them use this kind of stuff). I don't have much time for creating scripts but if i have time i can help you with skills and exc. stuff as this is my hobby  Just help an old man to finish this stuff and publish it for me to play it  ; 1-Permenant injury & dying project; Your idea on constitution will work great with permenant injuries which way the character became unconsious also ; if unconsiouness by fire then injury f(permenant attribute debuff & sloweffect[in3rd injury before dying], -z (vitalityboost) ) style). So our idea can work like below ; Constitution is still giving HP to our chars to not die fastly but after 3 permenant injuries EVENT DeathSaveInit will work and will make a saving throw check like in the script. Ressurcetion scroll name and script should be changed to maybe injury treatment scroll. ( What should we call it ?) 2-For the Mercenary Camp/Inn Project; I don't think they will add the hireables section like we think. But you are right have to wait for the hireables section completed in game after that we can mod it
|
|
|
|
enthusiast
|
enthusiast
Joined: Jun 2017
|
Also if you want to create a new race, you can create a new race preset which can even reference a whole new root template, though probably there won't be any races that will have all the armor models and stuff, and you'll have to reuse one of the other races for dialog tags.
Do you know if it will be easy to do this for the main campaign? Or in order to mod the campaign will we have to save it as a modified version of itself?
GMAddon1: Adds almost every single monster and NPC from the main campaign into GM mode, plus a few large custom maps to use in GM mode.
|
|
|
|
journeyman
|
OP
journeyman
Joined: Aug 2017
|
By saying modified version ?
Larian studios wanted these files to be modified by us thats why they created a public folder.
When we decompress game files by pattern codes and put them into public folder so game initilaze to look at these files that we coded first in runing whats we called modding. Normally Modders will wait for game's original modding tools to make things easy and more friendly.
However some of us started before to make exercise and create new ideas to be tested before modding tool released.
Main campaign will be changed by modding this way.
|
|
|
|
old hand
|
old hand
Joined: Aug 2014
|
Also if you want to create a new race, you can create a new race preset which can even reference a whole new root template, though probably there won't be any races that will have all the armor models and stuff, and you'll have to reuse one of the other races for dialog tags.
Do you know if it will be easy to do this for the main campaign? Or in order to mod the campaign will we have to save it as a modified version of itself? Yuhnis is correct, the public/mod folders will be able to replace any aspect of the main campaign. There were some difficulties with modding the main campaign in the original game, but that was actually fixed with the Enhanced Edition Epic Encounters obviously made huge changes to the main campaign and didn't have to replace the whole game. @Yuhnis. I'll look into those scripts, but most of the scripting can be done in the Base or Player scripts. I'm not sure I'll make it so there's no vitality changes in my mod, but I may decrease the vitality gain per level somewhat. I'll tinker around with the death saving stuff and post the final version when I get around to it. I'm thinking Rez scrolls could still work with permanent death, but be ultra rare and expensive (like 10,000 gold, maybe you find one). There could "first aid kits" that are much cheaper and common (but still more expensive than current rez scrolls, and much shorter range) that stabilize an unconscious character, perhaps avoiding a permanent injury. And then there could be mid-high priced items that cure permanent injuries that come from characters saving on their own.
|
|
|
|
enthusiast
|
enthusiast
Joined: Jun 2017
|
GMAddon1: Adds almost every single monster and NPC from the main campaign into GM mode, plus a few large custom maps to use in GM mode.
|
|
|
|
journeyman
|
OP
journeyman
Joined: Aug 2017
|
Ok Baardvark,
Waiting soon for your script works. Don't worry about vitality changes.After your work is finished in the scripts as well as creating new race (bloodmorph or necromorph) with elf template. I can rearrange vitality work as i worked inside both character and data files to make a perfection vitality balance again. I made the whole change in nearly 1 hour so it will not be a problem for me to make it again because I knew which stuff i will change.
I tested the game nearly 10 hours of playing with my update very challenging and good results. As weapons / damage / encounters are really giving hardcore fun and balanced. So weapon damages are not going super high damages by vitality / level ups so sword is sword in the begining and ending of the game & creature is creature in balance ( Of course animals, summons, big creatures , bosses , tough chars are arranged by gain exp levels and encounter difficulty otherwise it will be meaningless if a cat have the same vitality/armor so its not.) However as i said quality weapons still have higher damage values then normal ones again high attribute valued chars have different vitality/armor values. Damage / accuracy chance are on skill based as maxed to %50 like in the real engine because its already balanced.
Hope you can find out good solutions with changing the main script codes for our goal on permanent injury & dying project. And later when game fully released we can still use those changes for sure because game main files are not changing so much in time as i already summoned many monsters that are not inside the game for now but already finished & working. We can upgrade codes more in that time.
Last edited by Yuhnis; 14/08/17 10:00 PM.
|
|
|
|
veteran
|
veteran
Joined: Jun 2014
|
I've created a death saving throw system somewhat like your suggestion that works pretty much like how death works in DND 5th edition. When you "die" you have 50% chance to make a saving throw (may make constitution influence this, like you have a 40% chance to succeed + 1% * your Constitution). If you succeed three times, you get resurrected to 5-10% health, but if you fail three times you're permanently dead. The idea of permanent injuries is interesting. Would be best if they depended on how you died. Like if you die by fire, you gain a penalty to fire resist or something. How my save system currently works is below. I'm not sure about mercenaries. There may be hireables in the game, so I'll have to wait and see what happens there before I can start thinking about that. I like the idea of mercenaries charging more if you let too many of them die though. I saw your vitality changes on your mod. Interesting idea, have to see how that plays. I like the idea of levels having a smaller effect on challenge rating, both against high level and lower level enemies. Death Save System EVENT DeathSaveInit
VARS
ON
OnDie(__Me,_,_,_)
ACTIONS
IF "c1"
CharacterIsInParty(__Me) // only players attempt death saves
THEN
StartTimer("DeathRecovery",10,0) // attempt to save every 10 seconds
ENDIF
EVENT DeathSavesThrow
VARS
ON
OnTimer("DeathRecovery")
ACTIONS
IF "c1"
IsRandom(.50) // if this is true, then you are saving succesfully
THEN
IF "c1"
IsEqual(%DeathSaves,2) // if you've saved twice already, then you resurrect
THEN
CharacterResurrect(__Me,5)
Add(%DeathSaves,1)
ELIF "c1"
IsLessThen(%DeathSaves,2) // otherwise, just add a success to the variable
THEN
Add(%DeathSaves,1)
ENDIF
ELSE
Add(%DeathFails,1) // if the IsRandom above isn't true, than it's a fail, and you bleed
CreateSurfaceAt(__Me,SurfaceBlood,1,1,__Me)
ENDIF
IF "c1&c2"
IsLessThen(%DeathSaves,3) // if you haven't saved or failed three times, start the timer again
IsLessThen(%DeathFails,3)
THEN
StartTimer("DeathRecovery",10,0)
ELIF "c1|c2"
IsGreaterThen(%DeathSaves,2) // If you have died permanently or been rezzed, reset saves and fails to 0
IsGreaterThen(%DeathFails,2)
THEN
Set(%DeathSaves,0)
Set(%DeathFails,0)
ENDIF Currently this doesn't check for combat, so this will save over the course of a turn if you wait long enough. I think it's a bit tough to check if the character is in combat, since you can't be in combat if you're dead. It may need to iterate on characters nearby to see if they are in combat. When a character leaves combat, they will iterate on nearby characters, and if a dead character is nearby, they will then iterate themselves to check if combat is going on nearby from some other character or something, and then they will iterate on nearby characters again. To make the saves work in combat, it would have to take into account rounds, which would be slightly clunky since there's no "OnRound" check. Something like, when you die, note the round, and then on each character turn, take note of the round, and if a round has passed, then you make a save. So yeah, it's kind of complicated how I'm doing it. Maybe you can figure out an easier way? I assume you've seen this thread for all the character scripting commands? http://larian.com/forums/ubbthreads.php?ubb=showflat&Number=605357#Post604994Also if you want to create a new race, you can create a new race preset which can even reference a whole new root template, though probably there won't be any races that will have all the armor models and stuff, and you'll have to reuse one of the other races for dialog tags. You are absolutely a god.
|
|
|
|
|