[B18][WIP] Professor Schmilv's RimMon

Started by ProfSchmilv, February 09, 2018, 06:01:43 PM

Previous topic - Next topic

ProfSchmilv


This is a work in progress version. Bugs are most likely.

Disclaimer: I know that there is already a Pokémon mod in the making PokéRim (definitely check it out if you are into Pokémon!). I started this mod for learning purposes last friday (february the 2.) and didn't intend to release it at first because I did not think i would finish it at all. But I did not know how easy modding Rimworld actually is and made fast progress. Now I want to know what you think about it!

Introduction

Features:


  • Apricorn trees as growable crops
  • Harvesting Apricorns from Apricorn trees

       
       Southtown farming apricorns


  • Crafting three different kinds of Pokeballs from Apricorns at a Pokeball crafting table

       


  • The skill "Pokemon" (knowledge about and everything linked to Pokemon, needed for crafting Pokeballs)
  • The worktype "Pokemon handling"(needed for crafting Pokeballs)
  • 10 kinds of Pokemon (more to come, WIP):


    • Mareep, Flaaffy, Ampharos (very common)
    • Houndour, Houndoom (uncommon)
    • Larvitar, Pupitar, Tyranitar (quite rare)
    • Magnemite, Magneton, Magnezone (rare)
    • Grimer, Muk (uncommon)
    • Ekans, Arbok (rare)
    • Doduo, Dodrio (common)
    • Rattata, Ratticate (common)
    • Tauros (very common)
    • Mankey, Primeape (uncommon)
    • Onix (quite rare)

       
       A flock of Flaaffies and Ampharos' with a lurking Houndoom to the left (the Mareep got hunted down while I was playing)


  • Catching Pokemon by throwing Pokeballs at them
  • Captured Pokemon get stored in Pokeballs
  • Captured Pokemon belong to the Pokeball thrower
  • Choose if you want to play with vanilla animals (not recommended) or only with RimMon (default) in the storyteller selection

       
       Capturing an Ampharos and fighting an alarmed Houndoom

Todo:


  • Redo textures
  • Add more Pokemon
  • Spawn Pokemon biome dependent (once there are enough)
  • Balancing
  • Refactor code

What I want to do: I would like to add custom features for every Pokemon, for example using Mareeps as a power source (Update February 10: done!), riding Tauros or Pinecos as turrets. Also fishing could be an option.

I will edit and update this post as I proceed in the progress.

Download:
Git
Steam Workshop

Logic behind it

Pokémon

Pokemon completely replace animals. They are food and resource sources just like vanilla animals (maybe even more in the future).
When I learned about the lifeStage feature of animals in RimWorld it proved to be the perfect mechanic for my vision of Pokemon evolutions. So Pokemon in my mod evolve with age and for now this is no subject to change. I will maybe add a mechanic that adds age to Pokemon when participating in a fight (like XP in the games) so that they evolve faster the more they fight, but this will be something to consider later.

Mareep evolutionary line

       

Mareeps are based off of vanilla alpacas and are therefore easy huntable and serve as the main meat source in the early game.
Once tamed they are shearable as long as they are in the Mareep stage. Flaaffy and Ampharos look like they have less wool than Mareeps (their PokeDex entries also say so) so they no longer yield wool.
Mareep's wool allows it to drain the environments electricity and store it. The more Mareeps are in the same area, the faster it charges. Due to their inexperience they cannot control endless amounts of electricity, so the surplus energy unloads from time to time, damaging nearby electric devices. In captivity a Mareep discharging station can be used to capture surplus electricity and injecting it into the power grid.

       
        A charging Mareep flock gathering around a Mareep discharging station

Magnemite evolutionary line

       

Magnemites will spawn based on the amount of buildings involved in the power grid (or extremely rare by chance). They dont need food or sleep, in exchange they need electricity which they draw from a power grid. Wild Magnemites will be attracted by your power grid and discharge it. If they run out of power they get downed and need to be brought in reach of a power grid in order to get going again.
They will automatically repair damaged buildings belonging to their faction. If three Magnemites recharge their power simultaneously and are close to each other, the unleashed magnetic powers make them evolve into one Magneton. Magnetons are faster, can store more electricity and are more efficient repairing buildings. Magneton again evolves if there is a lot of magnetism in the area while recharging. Magnetism is computed by the amount of power buildings plus the amount of other Magnemites and evolutions in the area. Magnezones are extremely fast and power efficient.

Planned functionality:


  • The Magnemite evolutionary line helps constructing buildings.
  • At high constrution skill, while recharging, there is a chance a Magneton evolves to Magnezone

Grimer evolutionary line

       

Grimers spawn based on the amount of filth present in the HomeArea. They grant Chemfuel when milked or butchered. The more filth they absorbed, the bigger they are. While moving, there is a chance they create filth based on the amount of stored filth. When Grimers store a certain amount of filth the evolution into Muk gets triggered. They both feed upon dumping stockpiles, digesting the items stored in it in order to grow. Muks behave just like Grimers, but are more efficient and create more filth. If Grimers or Muk meet other Grimers at the dumping zone, there is a chance a Grimer gets absorbed.

Houndour evolutionary line

       

Houndour and Houndoom are based off of arctic wolves. They serve as predators in the current ecosystem.

Larvitar evolutionary line

       

The Larvitar evolutionary line is based off of grizzly bears. I added them because they are my favorite Pokemon :P

Pokéballs and catching Pokémon

There are currently three different kinds of Pokeballs in the mod: Pokeball, Greatball and Ultraball. They are crafted at a Pokeball crafting table using the custom Pokemon skill by combining apricorns and a component. The better the ball (Pokeball < Greatball < Ultraball) the more skill and apricorns are required. Apricorns grow on apricorn trees which can be grown in a designated growing zone. Those crafted balls are treated as weapons (based off of grenades). Once equipped they can be thrown anywhere. If their explosion does not hit a (uncaptured) Pokemon there is a chance of breaking the ball (chance of breaking: Pokeball > Greatball > Ultraball). If it is not destroyed, the Pokeball can be picked up again where it was thrown. If it does hit a (uncaptured) Pokemon, a capture attempt will happen. The capture attempt is based of off a formula used in generation III - IV Pokemon games.
(((3 * (float)Pokemon.MaxHitPoints - 2 * ((float)Pokemon.MaxHitPoints)*Pokemon.HealthScale) * (float)Pokemon.kindDef.baseRecruitDifficulty * PokeballUsed)/100f)*downed + (PokemonKnowledgeSkill/20);

    PokeballUsed is dependent on Pokeball = 1, Greatball = 2, Ultraball = 4. A random number between 0.0 and 1.0 will be rolled and if the rolled number is lower then the outcome of the formula the Pokemon will be successfully caught! The caught Pokemon now belongs to the throwers faction and the training obedience is finished with the thrower assigned as master. The captured Pokemon is now in its Pokeball and can be released or called back at will! Once released it can be treated as any other animal. In order to call the Pokemon back you got to hit it with the Pokeballs explosion.

Changelog:


  • February 09: initial upload
  • February 10: added Mareep functionallity and fixed saving + minor fixes
  • February 11: added Magnemite + minor tweaks
  • February 12: added Magnemite functionallity
  • February 13: Magnemites now evolve into Magneton and Magneton into Magnezone
  • February 14: added Grimer and Muk + some code refactoring
  • February 15:

    • Fixed Mareep discharging station not working as intended
    • Grimers and Muks can now absorb other Grimers in order to grow
    • Decreased the spawn rate of Grimers greatly
    • Decreased the spawn rate of Magnemites slightly
    • Decreased the amount of power produced by Mareeps
    • Added Pokemon specific loot (for example Mareep wool)
  • February 19: v0.2

    • Added Ekans and Arbok
    • Added Doduo and Dodrio
    • Added Rattata and Ratticate
    • Added Tauros
    • Added Mankey and Primeape
    • Fixed a major bug with Grimer that corrupted save files
    • Added an option for you to choose if you want to play with vanilla animals or not
  • July 28: v0.2ox

    • Added Onix
    • Fixed major bugs that prevented custom GameStates from beeing saved
    • Code refactoring

Pokémon © 2002-2018 Pokémon. © 1995-2018 Nintendo/Creatures Inc./GAME FREAK inc. TM, ® and Pokémon character names are trademarks of Nintendo. No copyright or trademark infringement is intended in using Pokémon content in this mod.[/list]

Harry_Dicks

I won't lie. This sounds pretty fun. But I don't think I can name a single pokemon that isn't first gen. Do you plan to add any of those?

ProfSchmilv

Quote from: Harry_Dicks on February 09, 2018, 11:38:29 PM
I won't lie. This sounds pretty fun. But I don't think I can name a single pokemon that isn't first gen. Do you plan to add any of those?

I am a first gen kiddo myself, so there will definitely be gen 1 pokemon! All in all I will add pokemon that contribute to the mod. Take mareep for example: it is an herd pokemon that yields wool and could function as a power generator. But i already have some fun ideas for exeggcute and exeggutor, so stay tuned for that ;). Frankly, just adding new pokemon is not the big deal (as most people in this forum probably know). But I dont want to stuff the mod with pokemon that dont add anything to the game experience.

Mantiarco


ProfSchmilv

Gotta admit, the current ones are placeholders. That's why there is the "Redo textures" part in the Todo section. But that will probably be one of the last things before v1.0 (if I ever make it that far :)).

kubolek01

Work on, and hope I can keep non-vanilla animals spawning still. For now following, waiting for more progress.
Eat lead, walking pile of silver! (greedy Player)
I...I can't do it. Leave it alive, please!(inner soul)
It lives 200 years to end up as a jacket?!(realists mind)
If I would go to vacation in off-Earth, even fictional place, I'd choose Nibel.

ProfSchmilv

Quote from: kubolek01 on March 26, 2018, 04:32:39 PM
Work on, and hope I can keep non-vanilla animals spawning still. For now following, waiting for more progress.

Everything non-vanilla will spawn, I don't intend to interfere with other mods. Furthermore at the start you can choose between disabled vanilla animals (as i conceived it) or with vanilla animals AND RimMon (because subscribers wanted that).

Btw. v0.2ox is up :) I found some time and hope to be able to push updates more frequently in the future.

--LukeNation--

Hi Man, i like talk with you about mods, i'm trying to make my own mod, and i have some questions, can you contact me? (L.Nation in steam)
THANKS :D
The World is on fire when I arrive,
Rimworld Extreme HardCore Modder,

ProfSchmilv

There are quite a few with that or a similar name :D I think it's easier if you just add me on steam, you can easily find me via my mod

Scavenger

Is this dead or getting up to 1.0? Whats the progress like?
"Man is least himself when he talks in his own person. Give him a mask, and he will tell you the truth." - Oscar Wilde

DocDoesGaming

I'm extremely eager to try this mod in 1.0 and make a small Let's Play series.
Thank you for this mod and I hope it's getting updated soon!