Author Topic: The Nanocaust  (Read 630 times)

Offline keith.lamothe

  • Arcen Games Staff
  • Administrator
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,218
Re: The Nanocaust
« Reply #15 on: July 28, 2017, 06:44:33 AM »
Quick question: if I'm not inside the Nanocaust code, how can I refer to the data inside the SpecialFaction_Nanocaust.Instance?
To get at the stuff in your mgr sub object you could use SpecialFaction_Nanocaust.Instance.mgr , though you'll need to make mgr public or internal for that to work; it's currently private.

Quote
I'm trying to implement hacking the Nanobot Hive, and I think the most efficient way to do this is to set a flag in the NanocaustMgr that can be checked PerSimStem.
That might work in the moment, but how would you get it to/from disk during save/load?

The ability to serialize/deserialize your own data as a modder is something I need to address, but for now I think you'd have more success with replacing the hive with an alternate entity type that behaves in the "hacked" way.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline BadgerBadger

  • Hero Member
  • *****
  • Posts: 512
  • BadgerBadgerBadgerBadger
Re: The Nanocaust
« Reply #16 on: August 02, 2017, 10:28:52 AM »
This patch should make it possible for the humans to Hack the Nanocaust; if you can manage to pull that off then the Nanobots will be your allies and will help you try to kill the AI with you. May need some tuning eventually if the hacking process is too easy/hard, but the alternate win condition now works, and it's really satisfying.

And before you ask, the hacked-ness of the nanocaust persists across saves.
« Last Edit: August 02, 2017, 04:55:33 PM by BadgerBadger »

Offline BadgerBadger

  • Hero Member
  • *****
  • Posts: 512
  • BadgerBadgerBadgerBadger
Re: The Nanocaust
« Reply #17 on: August 24, 2017, 01:15:57 PM »
This is basically a full internal rework of the Nanocaust. Changes include
  • Improved comments/code organization and quieted compiler warnings
  • updating the AI Progress so that the Nanocaust doesn't drive the progress up enormously (this is intended as a workaround till Keith has a chance to make Factions not affect the progress)
  • Nanocaust actions governed by various fleets, of which there can be many at once. So the Nanocaust could launch multiple attack simultaneously at different targets. Previously it used a very crude method of "Pick a target and send a bunch of ships there immediately" which did not scale at all. Now it will carefully choose ships (and the number of ships it can send is tunable), stage them all to a given location and then launch the entire force simultaneously
  • Improving the XML to allow inheriting nanobot center properties
  • Improving the tuning levers so that most can be eventually read from XML for easier balancing

Overall the behaviour isn't "that" much different. It will expand slowly enough that you should hopefully be able to fight it. Most of the work is behind the scenes, getting similar behaviour in a scalable, maintainable fashion.

If you review this on youtube I will be much less embarrassed.

Offline TheVampire100

  • Hero Member Mark III
  • *****
  • Posts: 1,207
  • Ordinary Vampire
Re: The Nanocaust
« Reply #18 on: August 24, 2017, 01:55:05 PM »
I think you should patches like this directly to Keith, so he can pack it into the next official patch as well.