[1.0](WIP) What The Hack?! - Mechanoid hacking

Started by Roolo, May 31, 2018, 04:03:57 PM

Previous topic - Next topic

Roolo

Note: this is the "work in progress thread". The mod is already finished now, and therefore this thread is outdated. If you want to discuss this mod, please go to the up-to-date thread

I'm proud to present the project I've been working on for some time. and I can really use some helping hands to get the testing done properly. The project is named:



In-game screenshot:


Dependencies
Hugslib, make sure Hugslib loads before What The Hack does.

Download
1.0 unstable version
B18 version (no longer maintained, read the note below)
Just download from the respective branch directly. I'll create a proper release page when 1.0 officially releases.

Can be added to existing saves.
Want full compatibility with Combat extended? Download the Combat Extended compatibility patch for B18 (A patch for 1.0 will follow when CE 1.0 is released).

Note about the B18 version
Since the release of Rimworld 1.0 unstable, I've switched focus to the 1.0 version, and the B18 version is no longer maintained. It is however pretty complete already, but just not as polished as the 1.0 version and not all features are included (most of them are though).

The mod adds the following things:
- The hacking table can be used to hack the targeting system of mechanoids, making them target your enemies instead of your colony! Beware though, hacking is very dangerous, all sorts of things can go wrong. Also, when mechanoids are hacked, the connection they have to the hive and with that the infinite supply of power is lost, making them dependent on their internal backup battery.
- That brings us to the mechanoid platform, which is needed to charge hacked mechanoids. Moreover, this platform can be used to store mechanoid parts in. When mechanoids have a direct power supply, their internal mechanites are activated, which use the mechanoid parts in the platform to repair the mechanoid.
- Mechanoid parts are besides their use for repairs and maintenance, also needed during the hacking process. Mechanoid parts can be gathered by disassembling mechanoids.
- Many upgrades can be applied to hacked mechs, including mounted turrets, repair modules, a self destruct option and more.
- With the mechanoid control belt your colonists can control mechanoids directly from a distance, given that their locomotion system is hacked.
- Research AI implanting, and you'll be able to implant an AI persona core in a hacked mechanoid, this'll give you direct control for combat purposes!
- Using the portable charging platform and some chemfuel, you can supply mechanoids with power during caravan trips.
- Should work with any mechanoids added by other mods.

How to hack mechanoids
1. Research micro electronics basics and at least basic hacking.
2. Build a hacking table
3. Build some mechanoid platforms (one for each mechanoid)
4. Gather mechanoid parts by destroying and disassembling mechanoids. Bigger mechanoids give more parts.
5. Go to the health tab of the mechanoid, click Modifications-> Add bill -> Hack mechanoid targeting device.
6. The mechanoid will be hauled automatically to the hacking table, and any pawns with a minimum crafting and intellectual of 5 assigned to hacking, will start a modification job, given there are at least 10 mechanoid parts in store.
7. If the hacking is successfull, your pawns will carry the mechanoid to a free mechanoid platform.
8. Make sure the platform has power (so the mechanoid charges), and mechanoid parts (so the mechanoid is repaired). That's it. When the mechanoids are charged and repaired, you can activate them, so they'll wreak havoc among your enemies.
9. For full controll over your mechanoids there are two option:
- Research "hacking and controlling locomotion systems". Issue a "hack locomotion system" bill in the mechanoid health tab, craft a mechanoid controlling belt at a machining table, and use colonists wearing such a belt to control mechanoids directly!
- Research "AI implanting", and issue a implant AI bill in the mechanoids health tab. If the modification is done, the mechanoid can be drafted at any time. This is the most powerful option, but requires an AI Persona Core (which can be retrieved after the mechanoid dies by disassembling the mechanoid).

Isn't this all hugely overpowered?
It's really my goal to make this as balanced as possible. For instance:
- Enemy advanced factions also use hacked mechanoids in battle! What factions can use mechanoids and which types of mechanoids, can be configured in the mod options.
- The mechanoid parts required to repair your mechanoids are a way of limiting the amount of times you can use mechanoids, making you think twice about using them in a battle, or saving them for a more pressing situation.
- The hacks applied to Mechanoids need to be regularly maintained by your colonists. This requires mechanoid parts, and running out can result in dangerous situations.
- Hacking is dangerous (you'll find out why), it's really a risk-reward thing.
- Power limits the time a mechanoid can be used continiously, and recharging costs time.

Current issues (PLEASE HELP ME FIND MORE)
This is still a work in progress, so don't expect thing to be flawless. But still, it's nearing completion, so it shouldn't be a buggy mess either. Current know issues are:
- Uninstalling a portable platform while a mechanoid is charging on it doesn't cancel the "linked to platform" job properly

Things I want to add

Before release:
- Balance probably needs some tweaking, and player input will be valuable in this process.
- Improve the sprites a little, maybe make them rotatable
- More mod options. Make almost any parameter tweakable + make the mechanoids each faction can use configurable.
- Fix everything in the "current issues" list.

After release (depending on how long it takes until Rimworld 1.0 is finished, some of these items might be finished before the release)
- Adding upgrades to the mechanoid controller belt so it can be used to temporarily hack the targeting and the locomotion system. Chance of success using these devices could depend on intelligence of the using pawn. (this may still be added before the release, but I'm not sure)
- Make mechanoid weapons replaceable

How can you help me?
- Playtesting. All the time I have for Rimworld basically goes to modding, so I barely have any time for actually playing the game. So just playing the game and reporting problems to me is very valuable for me.
- Feedback. Let me know what you think and let me know what can be improved.
- Art. If you want to offer help in improving/creating sprites, let me know.
- Donating coffee. Besides the cafeïne boost, it gives a huge boost in motivation when someone appreciates my work enough to donate.


Reporting issues
Clearly descibe what happens, and how to reproduce the behaviour. Also check if errors pop up, and if they do, please use the Hugslib error reporting feature by pressing ctrl+f12.

Credits
- malistaticy: For creating an improved version of the hacking table sprite.
- Orion: For creating and giving me permission to use the advanced mechanoid chip sprite, which was part of the amazing More Mechanoids, but is no longer used in that mod.


- One more thing: Guess what the new Giddy-up mod is going to be ^^

Chicken Plucker

Nice Roolo! This is very awesome! I can't wait to see it finalized

Kori

Sounds very good, I'll join the test! :)

When I use CE, will they pick up ammunition?

Roolo

Glad you guys like it.

Quote from: Kori on May 31, 2018, 06:29:03 PM
Sounds very good, I'll join the test! :)

When I use CE, will they pick up ammunition?

Great! I've not yet looked at CE compatibility so they won't pick up ammo and I'm not sure what happens when you use it with CE right now as I don't know how CE handles ammo for mechanoids. I'll look into it.


Madman666

This is nothing short of absolutely amazing. Your Giddy Up series are already a gem and now this! I'll gladly participate in the testing and offer any feedback nessecary. Thank you for all your hard work and amazing ideas, Roolo!

Umbreon117

Yeeeeesss...I can finally get my revenge by making those worthless robots fight among themselves for my own amusement!...I mean what?
I'll shoot your colonists...After a long nap.

Roolo

Update:

- Finished a patch for CE that ensures mechanoids automatically pick up ammo when activated. Download it here https://github.com/rheirman/WhatTheHack_Patch_CE. I must say, when considering balance, using mechanoids with CE is a whole different story as CE makes mechanoids POWERFUL AS HELL. It will balance out a bit when I've implemented that enemy raiders also use hacked mechanoids.
- Added alerts. Players get notified when mechanoids have very low power, or when they don't have enough mechanoid platforms.

edit:
- Hacked mechanoids now spawn in enemy raids of advanced factions (at least with techlevel spacer)
- Fixed problem that hacking table worked despite being out of power.


Quote from: Kori on May 31, 2018, 06:29:03 PM
Sounds very good, I'll join the test! :)

When I use CE, will they pick up ammunition?
The answer to your question is yes now (if you have the patch installed of course) :)

Kirby23590

Looks cool!

I'm going try this out now.

having Scythers and Centipedes or using Hounds from Mechanoids Extraordinaire as my bodyguards for the colony is very cool and useful at the same time!

One "happy family" in the rims...
Custom font made by Marnador.



Madman666

Its amazing! Raids having mechs is very nice for sure. I have so many factions from mods, i rarely get any mechs incoming, so its very damn nice to have some come with pirates and other advanced factions (by the way will they come with modded factions?). An influx of plasteel is also welcome. Those scythers like blowing off limbs too much, its costs a fortune making prosthetics. God, I'll have so much fun with it now!

As for feedback: it feels kinda harsh for mechs to cost an AI core only to control one unit without being able to get it back if the unit is destroyed. While mechs are really harsh when they come at you (mainly because they cripple\oneshot your people too easily), when you pit them against raiders late game (and you can't really get to hacking fast enough to start using them mid game) they mostly underperform without your control over them all (without CE). Raiders just shoot them to pieces. Scythers are effective, but too brittle and without cover drop fast. Centipedes are a really damn nice meatshields with suppressive fire-stunlocking abilities, but their incredible laziness makes them really hard to rely on even with control.

A bit of a suggestion: I think the method with which you can get control needs to be revised. Like constructing a broadcasting tower with couple AI cores, which allows you control as long as its powered and intact. And if power turns off, tower is destroyed - mechs that were active at that point revert to their bloodthirsty ways.

Roolo

Quote from: Madman666 on June 02, 2018, 02:33:21 PM
Its amazing! Raids having mechs is very nice for sure. I have so many factions from mods, i rarely get any mechs incoming, so its very damn nice to have some come with pirates and other advanced factions (by the way will they come with modded factions?). An influx of plasteel is also welcome. Those scythers like blowing off limbs too much, its costs a fortune making prosthetics. God, I'll have so much fun with it now!

As for feedback: it feels kinda harsh for mechs to cost an AI core only to control one unit without being able to get it back if the unit is destroyed. While mechs are really harsh when they come at you (mainly because they cripple\oneshot your people too easily), when you pit them against raiders late game (and you can't really get to hacking fast enough to start using them mid game) they mostly underperform without your control over them all (without CE). Raiders just shoot them to pieces. Scythers are effective, but too brittle and without cover drop fast. Centipedes are a really damn nice meatshields with suppressive fire-stunlocking abilities, but their incredible laziness makes them really hard to rely on even with control.

A bit of a suggestion: I think the method with which you can get control needs to be revised. Like constructing a broadcasting tower with couple AI cores, which allows you control as long as its powered and intact. And if power turns off, tower is destroyed - mechs that were active at that point revert to their bloodthirsty ways.

Thanks for your feedback and your kind words!  I forgot to mention in the last update post that the AI cores are retrievable from dead mechanoids with implanted AI now, so that partly resolves your issue.  But I still agree that  using the AI core is suboptimal. The tower idea is really nice, but a one time investment that gives full control might be a bit too much, even if the investment is high, especially since I want to keep the mechs with the default AI in game as they add a nice strategic element IMO. Maybe i should limit the amount of mechs that can be controlled with a tower? An alternative idea that I had was to not use AI persona cores, but a custom item instead, that can be retrieved from either quests or enemy hacked mechanoids that have implanted AI (with a small chance that enemy hacked mechs have implanted AI). Either way, now that AI is retrievable the issue isn't as big as it was, so I'll focus on some other things first, but it will get some more love at some point. Let me know if you have more feedback!

Edit: and to answer your question, yes they also come with modded faction, as long as their tech level is high enough. I'll add mod options later so you can also disable/ enable them for certain factions manually.

Madman666

Oh, so you can retrieve cores now! Yeah its fine then. I thought you just lose them immediately the mech dies. With towers I agree - having them be a one time built solution seems a bit much. I kinda like the idea of a custom item AI chips, dropping randomly from enemy mechs though. Making them one time use (destroyed upon mech death) and allowing for a really expensive endgame crafting recipe that uses Research stat to craft and takes time comparable to crafting a full power armor set would be nice. It would make Researchers more useful lategame and also won't allow for overusing mechs, since the time and resources it costs would be a limiting factor.

Another way would be to add an operation you could perform on downed mechs allowing you to salvage AI chip parts instead of hacking it, so you have a choice - to have some dumb soldiers, or sacrifice several potential dumb mechs to assemble a full chip and get 1 fully controlled, which will drop its chip on death. That would be rather neat too.

And the drop chance for AI chips from friendly and hostile mechs you can make an adjustable option. If i come think up of something else - i'll be sure to suggest it.

Kori

Quote from: Roolo on June 02, 2018, 07:39:24 AM
The answer to your question is yes now (if you have the patch installed of course) :)

Great, thanks! :)
It's good that we can retrieve the AI cores now, though custom items you can get from quests, enemy mechs or very expensive from trading or crafting sounds good as well, maybe even a little bit better.

Canute

I didn't manage it yet to capture some mechanoids.
But maybe craft 2 lower kind of AI chip, which give the Mechanoid's worser abilities.
And the AI core give the best abilities. Don't forget these core can turn a MAI into a high skilled Pawn.

Roolo

Thanks again guys for the feedback! Yeah I think adding a lower tier chip while keeping the retrievable persona cores is the way to go. Inspired by your ideas, I have a nice purpose in mind for this new lower tier chip. It would be neat if, put in a lore friendly way, it does not override AI, but instead hacks the locomotion system. Given that, remote controllers can be crafted, and colonists can be assigned a job to take direct control over a mech using the controller. This makes the colonists occupied while controlling the mech, and the controller would have a maximum range, potentially requiring the colonist to expose himself to danger. Implanting AI would still work as it is now, having the advantage no colonist is required for control.

Hacking the locomotion system also makes a lot of sense when we add Giddy-up to the mix.

Edit: and Madman, I really like the salvage chips idea  (which can only be done with non-killed mechs, and gives some extra chips). I'll probably implement that.