[1.0] A RimWorld of Magic

Started by Torann, November 24, 2017, 11:17:05 PM

Previous topic - Next topic

Canute

QuoteAnother thing that i'm unsure about is, can you make certain spells be more or less effective against pawns with certain traits and/or defs? Example, make necromancers get healed less with non-necro healing spells.
From the old magic lore, healing don't work on Undead it even damage them.
Since a regular Necro is still a living beeing he should be healed. But that don't count once he turn into a Lich.
But when healing becomes dangerous for undead, the circle of healing could be very tricky. Special when the Zombie's from Zombieland mod become the undead trait too.

Toketsu

Quote from: Canute on May 30, 2018, 02:59:25 AM
QuoteAnother thing that i'm unsure about is, can you make certain spells be more or less effective against pawns with certain traits and/or defs? Example, make necromancers get healed less with non-necro healing spells.
From the old magic lore, healing don't work on Undead it even damage them.
Since a regular Necro is still a living beeing he should be healed. But that don't count once he turn into a Lich.
But when healing becomes dangerous for undead, the circle of healing could be very tricky. Special when the Zombie's from Zombieland mod become the undead trait too.

A proper necromancer has dabbled too deep into death and dark magic, and as such, healing magic should have lowered effects on them. This includes, but isn't limited to heal and resurrection. Liches should be damaged by healing, agreed.

ZE

#737
Torann i have a suggestion not for the game but for yourself

Get patreon, set it up so people with fat wallets can thank you with their munnys, and get discord, link it to patreon and your other avenues of distribution (steam, moddb, here etc.) and let us chat n discuss what an awesome mod this is

on "Sensitivity", i think rather than a single governing trait, a series of affinities would be best.  Could be controlled by hidden hediffs,  a pawn could have anywhere from 0 to 200% affinity toward any of the established elements

-Fire  ~  [Heat]
-Ice   ~  [Cold]
-Lightning  ~  [Elec]
-Druid  [Nature]
-Arcane - Summoner - Necromancer  ~  [Dark]
-Holy - Priest  ~  [Light]
-Faceless  ~  [Psychic]
- ???  ~  [Anti-Magic]

Affinity being a multiplier to damage output, against their affinity of that element and anti-magic , most pawns having close to 100% toward any given element and 0 for antimagic, magically gifted leaning more toward 200% of at least 1 element.  usually a person gifted in 1 element, is weak in the opposite, (fire vs ice, Elec vs Nature, light vs dark) exception being psychic and antimagic.  a person can be strong psychicly and strong in an element, a person strong in antimagic is weak in all other elements.  less than 100% is a weakness.  in regard to healing, a pawn with a weakness will be healed less unless undead, which means they'd take more damage.... a pawn with 150%

Example of antimagic
http://saga.wikia.com/wiki/Gustave_XIII
though not explicitly stated, he cannot wield spells like most other people in his world, but has a natural resistance (though not immune) to spells

various materials and leathers could be patched toward affinities, providing resists and boosts.  (i.e Steel 50% Antimagic, 200% lightning, resisting everything but lightning, taking extra electric damage (150%))

on another topic

not sure if its a bug or not but making a faceless necromancer ruined the necro spells, which refused to cooldown.  in the past versions i'd dualclass no problem, but it seems to not work for me anymore? i haven't tried any other combinations but i like having more abilities

on that note, actual Dual-Classing would be cool, not just 1 might 1 magic, but 2 of anything

and i wouldnt mind actually assisting in the event construction, and art department.  currently still workin on apini but i can multitask a little

another aside, Jecrell's Rim of Madness ~ Vampires should be considered undead

Torann

#738
Quote from: henk on May 29, 2018, 08:32:27 PM
I like the idea of psychic sensitivity affecting pawn mana gains, but perhaps they could also affect spell costs - so a pawn that is psychically deaf won't be strictly worse as a mage.
Interesting twist! But maybe something more subtle? Like a sensitive pawn would have increased spell damage but also being more vulnerable to magic while a psychically deaf pawn would do less damage but also take less damage from magic?  Maybe other traits altogether that give boosts/gains to mana gain and spell cooldown.  The events are a good idea though, and easy enough to implement I think.

Quote
Finally, is it possible to give spells special effects at casting? Similar to choosing a material for furniture, choosing an effect on a spell could change its mana cost and increase some of its properties.
Definitely possible.  The arcane spectre enchantment already does something very similar, which has a chance to deal additional damage on a hit; other effects based on other conditions could be added.

Quote from: Toketsu on May 29, 2018, 11:28:12 PM
Another slider that could be added is a "item price" slider, that affects all items added by this mod
Another good mod option, I'll look at adding it, but I think the overall economic impact would need to be considered as it could easily turn crafting and selling magical items more profitable than intended and end up having other unintended affects.

Quote
Also, Torann, i said i had a good idea for the next suggestion, but i'm unsure if this is possible to add: Two separate classes that have great synnergy with eachother.
You might be a bit of a psychic yourself since this is remarkably close to what you will see with the succubus/warlock, which is the current class in development.  This class will have two distinct traits and playstyles but will differ in many ways too.  The succubus will be the female only version (more centered around physical affects) and the warlock male only (and more mental based powers), but they will share some spells and have some very interesting synergy.

Quote
Another thing that i'm unsure about is, can you make certain spells be more or less effective against pawns with certain traits and/or defs? Example, make necromancers get healed less with non-necro healing spells.
Yup, definitely agree and will put this concept on the To-Do list along with ZE's suggestion of expanding this idea to elemental affinities.

Quote from: ZE on May 30, 2018, 11:27:45 AM
not sure if its a bug or not but making a faceless necromancer ruined the necro spells, which refused to cooldown.  in the past versions i'd dualclass no problem, but it seems to not work for me anymore? i haven't tried any other combinations but i like having more abilities
Dual classing is not technically supported (you'll notice this is not possible through normal means based on conflicting trait assignments), but if you choose to do so then just be aware that it will never work with the Faceless due to the fact that this class is both a magic user and a might user, though the magic user properties/tabs/etc will all be disabled.  This was required to allow the faceless to use magical abilities through their "mimic" skill.

Sub-classing is still on my concept page(s), though it's another one of those big changes that I haven't committed to yet due to time constraints.

Quote from: ZE on May 30, 2018, 11:27:45 AM
Get patreon, set it up so people with fat wallets can thank you with their munnys, and get discord, link it to patreon and your other avenues of distribution (steam, moddb, here etc.) and let us chat n discuss what an awesome mod this is
For anyone that would like to financially show their appreciation for this mod, I would strongly encourage you to contribute to Jecrell instead since this mod relies on and would not exist without JecsTools.  Or, just buy a copy of this amazing game for a friend. ;)

ZE

I wouldn't mind making a class sometime down the road, if you have the time sometime to walk me through how to do it, link me on discord. 

They are just random ideas i wanted to play with rather than just suggest something which may or maynot fit.  and if it turns out they do, i could give you a ready made product to add rather than just an idle thought.  otherwise i could just put it in my own extension mod

i ask for your aid since you seem to really have a good grasp on the framework jec has designed, far better than my own understanding.

Toketsu

Quote from: Torann on May 30, 2018, 07:34:29 PM
Quote from: Toketsu on May 29, 2018, 11:28:12 PM
Another slider that could be added is a "item price" slider, that affects all items added by this mod
Another good mod option, I'll look at adding it, but I think the overall economic impact would need to be considered as it could easily turn crafting and selling magical items more profitable than intended and end up having other unintended affects.
Yeah, i didn't think about that... Perhaps the same slider could increase the crafting costs by the same %? Or maybe a crafting slider to go along with it.

Quote from: Torann on May 30, 2018, 07:34:29 PM
Quote
Also, Torann, i said i had a good idea for the next suggestion, but i'm unsure if this is possible to add: Two separate classes that have great synnergy with eachother.
You might be a bit of a psychic yourself since this is remarkably close to what you will see with the succubus/warlock, which is the current class in development.  This class will have two distinct traits and playstyles but will differ in many ways too.  The succubus will be the female only version (more centered around physical affects) and the warlock male only (and more mental based powers), but they will share some spells and have some very interesting synergy.
I see, seems interesting. Also, let me add a question here - is it possible for you to create new effects? Such as frozen, charmed, along others? Differences between frozen and stunned, for example, would be that frozen would be removed with heating and fire spells, and the pawn takes highly increased physical damage while frozen.

Quote from: Torann on May 30, 2018, 07:34:29 PM
Quote
Another thing that i'm unsure about is, can you make certain spells be more or less effective against pawns with certain traits and/or defs? Example, make necromancers get healed less with non-necro healing spells.
Yup, definitely agree and will put this concept on the To-Do list along with ZE's suggestion of expanding this idea to elemental affinities.
Alright, i'll be upgrading my suggestions based on this. Already got a few done. My next post likely will be a decent-sized one, including spells, classes, an anti-magic counterpart for magicyte and more.


Toketsu

#741
I wanted to suggest this later, along with the other 3 classes i'm working on and a few other things, but this class just seemed like a good idea, so i felt i needed to suggest it now. Also added the magicyte counterpart that i mentioned before.

Items:

Drainyte - New resource that, when worked, has anti-magic capabilities and is immune to damage from spells. Walls and floors made of Drainyte will slowly drain any mage's mana (1% every 10 seconds) until they have 5% left. Good for making mage traps and anti-magic prisons. This is a rare material (even rarer than magicyte) that can only be obtained from meteors and traders.

Drainyte shell - New mortar shell that deals little damage, but drains a high amount of mana upon explosion.

Drainyte melee weapons - Deals double damage to mana shields, and half damage done to a mage is also dealt to their mana.

Drainyte power armor - provides small defensive boosts against magic (10-20%) along with a few other effects.
Requires power armor research.

Drainyte power gloves - New hand slot equipment that has a chance to negate any magic damage and effects to the user via a shield. Chance based on manipulation %, with 100% manipulation giving 5% chance.
Requires power armor, charge shot and shield belt researches.

Drainyte power boots - New foot slot equipment that reduces magic-based stun duration by 30%.
Requires power armor research.

Drainyte power helmet - New heead slot equipment that gives you a chance to negate spell effects such as being teleported around (does not work against faceless' transpose). Chance based on consciouness %, with 100% consciouness giving 25% chance.
Requires power armor and shield belt researches.

Buildings:

Drainyte beacon - Large-radius mana draining capability, requires energy to work.

Drainyte power beacon - Tiles under the effect of these are protected from spells (including things such as blizzard's projectiles). High energy usage, requires "Shield Belt" research. Materials include drainyte and
advanced components among them. Pawns can not cast magic while inside these, and magic effects dissipate on a pawn that moves inside the area.

Drainyte cryptosleep casket - Place magical pawns inside to produce one mana potion per 5 days. Requires fueling with one sandstone chunk and requires power.
Requires Cryptosleep casket research.


Classes:

Paktierer (magic) (another name could be "pactmancer", Paktierer is german for "compromisers" according to google)
This class uses pacts and contracts (see details far below) as their main methods of casting. They are a non-combat caster class. Heavily relies on social skill and social tab to work.

Pact (sustained, can have multiple) - Targetted spell that requires two targets. There are several types of pacts (see far below) to create, and they last until either pawn or the paktierer dies.
10% sustained mana per pact, has a spell to dismiss a pact, which allows you to choose which pact to dispell, instead of doing it randomly or all. This spell does not work with prisoners.

Contract (sustained, can have multiple) - Same as above, but with 8% sustained mana per contract. Details far below.

Shrewd negotiator (passive) - Gain +2% of all health tab stats (manipulation, hearing, etc) per pact sustained, and +1% per contract sustained. Effect increases with higher skill.

Pactmaster (passive) - Always starts unlearned and requires 10 social skill to learn. Each level up requires +5 social level, up to 20. Each level increases the number of pacts you can sustain on a single pawn, and pawns gain +5-10% skill exp per pact they are in.

Unwilling Pact (master) - Works the same way as a pact, but can be used on prisoners. This spell has a few differences to normal pacts, which include: Buffs are not added to prisoners, debuffs are not added to colonists, and soul link is one-way only, meaning that if the prisoner takes damage, the effect does not trigger. You can only use this spell with a colonist + a prisoner. Sustained mana cost of 15%.

Pact system:

Pacts
Pacts are magical oaths that a Paktierer can create between two pawns. These pacts can provide an array of buffs and debuffs, and well as other effects. What kind of pacts two pawns can have deeply depends on how they see eachother. Pacts are intended to be a permanent thing, but can be removed by paying a heavy price - both affected pawns lose 50% max health on every body part. This doesn't take effect if the paktierer dies (in which case all pacts are dispelled). Nothing happens if the pact breaks because the pawn's relations changed and got off the pact limit, other than losing the pact.

Some ideas of pacts:

Soul link pact
Requires both pawns to be at +80 or higher relation with eachother. This pact makes it so all damage taken by one pawn is reduced by 20% and the remainder is shared equally across both pawns. This works both ways, as in both pawns can take and share the damage.

Rivalry pact
Requires both pawns to be between -1 and -50 relation. This pact makes it so both pawns will have social fights between eachother 3x as often, but if they fight together against the same enemy, they'll deal 20% increased damage with 10% increased accuracy.

Hate pact
Requires both pawns to be between -70 and -100 relation. This pact... I'll be honest, i can't come up with anything useful for it right now, so i might post as is for others or you to make something for it.

Love and hate pact
Requires one pawn to be above 0, and one below 0 relation. This pact makes the pawn above 0 to gain global work speed and gain a mood buff, while the pawn below 0 gains a damage buff, is more likely to offend people that like the pawn above 0 (+50 or higher relation), and will gain a slight mood debuff.


Contracts
Contracts are very similar to pacts. They use the same 'pacts' as contracts, but with effects lowered by 50%, and do not dispell if relations get off the contract's limits, as those are now just requirements. Contracts can be dispelled without any backlash, unlike pacts. One pawn may be in as many different contracts and he wishes, but only in one with each other pawn. Contracts do not add to the Pactmaster skill.

Social skill + pacts

Social skill adds a few things to how pacts work.
Each social skill level adds +- 2 relation points to the pact's relation limits. For example, a paktierer with level 10 social would be able to form soul link pacts with pawns at +60 relation, and rivalry pacts between +19 and -70.
Every 5 social skill levels reduce debuffs and bad effects from pacts and contracts made by this paktierer by 10%.
Every 10 social skill levels will give the paktierer one mana-free sustained pact or contract. Pacts take preference here as they cost more and are generally better.

Other
Make a top left message with sound when a pact or contract ends for whatever reason, and state the reason.

Igams

#742
I already posted this in the Steam bug reports thread but I'll post it here as well in case you see this first.

The minion spell gets broken(it doesn't summon anything) when using Jec's new 'The Third Age' mod here: https://www.patreon.com/posts/lord-of-rims-age-19181731

Here's the error I get when using only HugsLib, JecsTools, The Third Age, and A RimWorld of Magic. Switching the load order of this mod and The Third Age has no effect either.

Failed to find Verse.PawnKindDef named TM_Minion. There are 64 defs of this type loaded.
Verse.Log:Error(String)
Verse.DefDatabase`1:GetNamed(String, Boolean)
Verse.PawnKindDef:Named(String)
TorannMagic.Projectile_SummonMinion:Impact(Thing)
AbilityUser.Projectile_AbilityBase:ImpactSomething()
AbilityUser.Projectile_AbilityBase:Tick()
TorannMagic.Projectile_SummonMinion:Tick()
Verse.TickList:Tick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

Missing kinddef
Verse.Log:Error(String)
TorannMagic.Projectile_SummonMinion:SingleSpawnLoop(SpawnThings, IntVec3, Map)
TorannMagic.Projectile_SummonMinion:Impact(Thing)
AbilityUser.Projectile_AbilityBase:ImpactSomething()
AbilityUser.Projectile_AbilityBase:Tick()
TorannMagic.Projectile_SummonMinion:Tick()
Verse.TickList:Tick()
Verse.TickManager:DoSingleTick()
Verse.TickManager:TickManagerUpdate()
Verse.Game:UpdatePlay()
Verse.Root_Play:Update()

Torann

Quote from: Igams on June 03, 2018, 06:14:43 PM
I already posted this in the Steam bug reports thread but I'll post it here as well in case you see this first.

The minion spell gets broken(it doesn't summon anything) when using Jec's new 'The Third Age' mod here: https://www.patreon.com/posts/lord-of-rims-age-19181731
I believe the issue is the tech level tagging being used for some of the creature summons.  I will have it deconflicted next update, but that might be a few days since the Warlock/Succubus class is in mid-development.
In the meantime, if you're feeling daring, you can apply a temporary fix to your mod by changing the tech level:
Navigate to the TMagic mod folder ./defs/PawnDefs/Faction_Elemental.xml
Open that up and change the faction for both TM_ElementalFaction and TM_SummonedFaction to "Neolithic"

Igams

#744
Quote from: Torann on June 05, 2018, 10:09:38 PM
I believe the issue is the tech level tagging being used for some of the creature summons.  I will have it deconflicted next update, but that might be a few days since the Warlock/Succubus class is in mid-development.
In the meantime, if you're feeling daring, you can apply a temporary fix to your mod by changing the tech level:
Navigate to the TMagic mod folder ./defs/PawnDefs/Faction_Elemental.xml
Open that up and change the faction for both TM_ElementalFaction and TM_SummonedFaction to "Neolithic"

That fixed it thanks for the help!

Canute

Torann,
is there a way for you to select what pawn's are geting magical traits ?
Some other mod's allow the creating of pawns (Andoids).
But i think it is a big unlogical/unfair when these newly created one got magical traits from the beginning.
But forbiding these completly would remove them from Raiders too, which is unwanted.

I didn't played with Pregancy&children yet, but we should take a look into that too.
When both parents are magical gifted, the child should have a high chance to be magical gifted too.

Toketsu

#746
Quote from: Canute on June 06, 2018, 05:00:30 AM
Torann,
is there a way for you to select what pawn's are geting magical traits ?
Some other mod's allow the creating of pawns (Andoids).
But i think it is a big unlogical/unfair when these newly created one got magical traits from the beginning.
But forbiding these completly would remove them from Raiders too, which is unwanted.

I didn't played with Pregancy&children yet, but we should take a look into that too.
When both parents are magical gifted, the child should have a high chance to be magical gifted too.
Iirc i had a bard child on my previous colony. I could be wrong on that, but i'm 100% sure one was born magically gifted.

Edit: Fixed a typo.

Canute

Do you remember what traits the parents got ?

Toketsu

Quote from: Canute on June 06, 2018, 06:35:24 AM
Do you remember what traits the parents got ?
One was a lightning mage orassan, while the other was a druid orassan. If you want regular traits, then sorry, that's beyond what my memory can do.

ZE

hereditary Physical and Magical adept makes sense, but i wouldn't put it at 100%.  i wouldn't inherit the class itself, just the affinity