Author Topic: Solar's wishlist  (Read 455440 times)

Offline Yankes

  • Commander
  • *****
  • Posts: 3194
    • View Profile
Re: Solar's wishlist
« Reply #180 on: September 04, 2016, 05:52:56 pm »
First two are already doable using "use" attack of psi-amp, its first use normal psi attack calculation and if success then treat psi-amp as normal weapon hit.
With scripts (around 3.4) some of rest will be available. Instead of normal attack you will execute some script that can alter state of unit in any way you want.
At end of each round another script will be run to revert changes done by this attack (if needed).

Only last point it out of scope for now.

Offline Dioxine

  • Commander
  • *****
  • Posts: 5412
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Solar's wishlist
« Reply #181 on: September 07, 2016, 09:03:50 pm »
How hard would it be to allow renaming HWP-type units? It doesn't have to be all that involved, just alias would do fine, if I use up my Reaper to manufacture Mutated Reaper, and lose the one I renamed to Teddy Bear, I won't cry, I can just rename him again.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: Solar's wishlist
« Reply #182 on: September 07, 2016, 09:47:22 pm »
How hard would it be to allow renaming HWP-type units? It doesn't have to be all that involved, just alias would do fine, if I use up my Reaper to manufacture Mutated Reaper, and lose the one I renamed to Teddy Bear, I won't cry, I can just rename him again.

Short answer: on a scale from easy to hard... really hard! (read until the end for one possible option)

Long answer:

In Geoscape, soldiers are represented as individual objects with attributes (e.g. tu, stamina, days wounded, number of kills, etc.). Each soldier is handled separately, you cannot make an action on multiple soldiers at once... the only action which can involve multiple soldiers at once is buying them (because they don't exist yet as individual objects).

Scientists, engineers, HWPs, weapons, aliens, etc. are represented as a string identifier with a number (e.g. "STR_PARROT: 5" ... that's literally the only thing the game knows about all your parrots in geoscape). You can sell 5 parrots at once, you can equip 5 parrots at once, you can move 300 engineers from one base to another at once... because they are just a number. That's why Solar's "everybody can do everything" request makes no sense... imagine having to click 300-times on 300 different lines in a transfers table to move all 300 engineers to a different base (same as you have to do for soldiers today).

In Battlescape, based on rules of the object/hwp type (note the difference: not object/hwp, but object/hwp type)... a HWP is constructed from thin air into a BattleUnit, which is an object and has properties (remaining TUs, morale, left-hand weapon, backpack size, thermal vision and so on...). After the battle this object (which could potentially have a name during battle) is deconstructed into thin air and all that remains from it is "+1" for the hwps of the same type already in the base.

Summary:
- everything, which is not a soldier (or a craft) cannot have properties (like name), because it doesn't really exist as individual (in geoscape)... i.e. with current architecture/game design hwps cannot have names.

Options:
1. instantiate hwps also in geoscape... this would require quite some amount of work (guesstimate of 100+ hours) and would totally change the architecture... if SupSuper, Warboy or Yankes changed anything in OXC/OXCE, I would not be able to merge it... because there would be nothing left from original code to merge into... so anything even remotely related, I would have to implement separately myself...

2. I can give you an option to rename your hwps during mission briefing... and keep their names during a single mission... however the name would be lost after the mission once the hwps are dematerialized into a number

3. instead of using hwps, why not use soldier types? I added support for "manufacturing" them, added things like inability to be a pilot or exclusion from promotion system... there's almost nothing more preventing you from using a separate soldier type as a hwp type... and if there is, we can probably add it.... and they can have names... you can even specify/force the name during manufacturing as I demonstrated in the "bruce willis" example somewhere earlier

-----

EDIT: for those people who didn't understand the technical bla bla, imagine it like this:

1. your stores don't actually contain 5 heavy plasmas, 4 flares and 2 tanks... they contain only a sheet of paper which says there are 5 heavy plasmas, 4 flares and 2 tanks here... but you will not find them :)

2. your alien containment doesn't actually contain sectoid Alex, floater Bob and snakemen Cyril and David... it contains only a list saying there are 2 snakemen, 1 floater and 1 sectoid in here... but you won't see them anywhere like in a zoo

3. your living quarters actually do contain 20 soldiers (Anna, Beatrice, Claudia, Diana, Eve, Filomenia, Georgia and Helene)... and you can go and chat with them... but they don't contain any scientists or engineers; just a sheet of paper which says there are 200 engineers and 15 scientists living here
« Last Edit: September 07, 2016, 10:07:03 pm by Meridian »

Offline Dioxine

  • Commander
  • *****
  • Posts: 5412
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Solar's wishlist
« Reply #183 on: September 07, 2016, 10:05:50 pm »
So it is as I feared. I'd naturally go for Option 3, but there are some caveats.
Namely, the constraints of deployment. Take the Bonaventura. In theory, you could hold up to 4 tanks there (4x4 is less than 18), BUT. The deployment can handle only two 2x2 units. There is physically no space inside the craft to spawn more, and either the game won't spawn them, or straight out crash if I add more than 2.
However a possible solution seems to present itself. If it was possible to mark an armor as "is HWP", you could limit the numbers of 'tank-soldiers' to the current HWP allowance. Being able to manufacture soldiers, and naturally armors, we could do away with old HWP system completely - tank soldier is hwp chassis, which has each of its variants produced as armor (giving the tanks flexibility the people have been asking for). So in short we need, I think:
- Armor flag 'isHWP' so the soldier wearing it counts towards craft's HWP limit.
- Allowed soldier types flag for Starting Conditions
Piloting is thankfully already handled :)

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: Solar's wishlist
« Reply #184 on: September 07, 2016, 10:10:33 pm »
Yes, all that can be done... I have a bit different idea, but with basically the same end effect.

Believe it or not, it is much easier to implement 2x2 soldiers than it is to give a name to a parrot...  :P

Offline Dioxine

  • Commander
  • *****
  • Posts: 5412
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Solar's wishlist
« Reply #185 on: September 07, 2016, 10:13:59 pm »
You probably want to avoid deployment trouble auto-magically, eh? Do your worst, if you insist :)

EDIT: to clarify my statement, if we go that way, I intend to completely remove any old-style HWP units from X-Piratez and change every last one of them into a soldier type.
« Last Edit: September 07, 2016, 10:15:40 pm by Dioxine »

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: Solar's wishlist
« Reply #186 on: September 07, 2016, 10:19:34 pm »
You probably want to avoid deployment trouble auto-magically, eh? Do your worst, if you insist :)

Nah, just instead of "isHWP" on armor, the "size" attribute is already enough to do calculations/limitations on total space available/used.
And to simulate current limit on allowed hwps per craft (due to floor plan limitations), I would introduce a limit per soldier type per craft... that's actually on my todo list for several months now.

Or, if I really find some time... I'll do a visual assignment of soldiers to craft, i.e. you put them on a specific place too.
That's also on my list... but almost on the very bottom, but it would allow you to reorder soldiers during briefing too, which is something I always wanted.

EDIT: to clarify my statement, if we go that way, I intend to completely remove any old-style HWP units from X-Piratez and change every last one of them into a soldier type.

It will require work too... and will probably not happen until my Xmas holidays to be honest.
« Last Edit: September 07, 2016, 10:21:38 pm by Meridian »

Offline Dioxine

  • Commander
  • *****
  • Posts: 5412
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Solar's wishlist
« Reply #187 on: September 07, 2016, 11:42:57 pm »
And to simulate current limit on allowed hwps per craft (due to floor plan limitations), I would introduce a limit per soldier type per craft... that's actually on my todo list for several months now.

Have mercy! You know what pain in the ass it would be to custom-tailor everything for EACH craft? :) Just maybe make count every size 2 armor as not only taking 4 space, but also a HWP slot. It's way easier on the modder.

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 8597
    • View Profile
Re: Solar's wishlist
« Reply #188 on: September 07, 2016, 11:48:02 pm »

Offline khade

  • Commander
  • *****
  • Posts: 509
    • View Profile
Re: Solar's wishlist
« Reply #189 on: September 08, 2016, 12:14:56 am »
So will it be possible to put a Gal in a mini mecha or something and have them count as a HWP?  Another option could be to set a limit on specific specialty costumes, like the ghost, and make them extremely powerful to compensate for the limits.  I'm sure that last one will have people out for my blood.  :)

Offline ohartenstein23

  • Commander
  • *****
  • Posts: 1931
  • Flamethrowers fry cyberdisk circuits
    • View Profile
Re: Solar's wishlist
« Reply #190 on: September 08, 2016, 12:44:29 am »
I never knew I wanted this until now, but I need gals piloting Sectopods.

Offline Solarius Scorch

  • Global Moderator
  • Commander
  • *****
  • Posts: 11408
  • WE MUST DISSENT
    • View Profile
    • Nocturmal Productions modding studio website
Re: Solar's wishlist
« Reply #191 on: September 08, 2016, 01:29:21 am »
PS: btw. please think also about if these ideas add anything (new) to the game... I won't be implementing any more features like the Alien Containment types, which are there just for decoration

Yes, that's why it's just some musings right now... I don't have specific plans, but they'll probably come up as I introduce new factions, etc.

I never knew I wanted this until now, but I need gals piloting Sectopods.

It's completely natural. :)

Offline Dioxine

  • Commander
  • *****
  • Posts: 5412
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Solar's wishlist
« Reply #192 on: September 08, 2016, 02:12:30 am »
I never knew I wanted this until now, but I need gals piloting Sectopods.

It has been long planned, and Yankes' code support appeared long time ago too, but there was no time for it on this year's schedule. So this topic changes little, although can maybe offer better support. What it is about, it is about making HWPs/Aux units less hackish and more fun.

Offline Yankes

  • Commander
  • *****
  • Posts: 3194
    • View Profile
Re: Solar's wishlist
« Reply #193 on: September 08, 2016, 03:19:54 am »
Nah, just instead of "isHWP" on armor, the "size" attribute is already enough to do calculations/limitations on total space available/used.
And to simulate current limit on allowed hwps per craft (due to floor plan limitations), I would introduce a limit per soldier type per craft... that's actually on my todo list for several months now.
Solder with 2x2 size already are handled as HWP in case of craft space.

Offline Stoddard

  • Colonel
  • ****
  • Posts: 485
  • in a fey mood
    • View Profile
    • Linux builds & stuff
Re: Solar's wishlist
« Reply #194 on: September 11, 2016, 02:54:14 am »
I was looking into stacked maps as a side project and the main problem is that I can't see how it should be defined in the rulesets.

I'd like it not only to enable skyscraper-type maps, but also replace alien base assaults with something resembling Siberian Base mission, while being random enough so as not to require reworking it all. So the higher levels have to be defined somehow, but not very rigidly to allow the randomness.

Any ideas? And, if I just stack the existing .maps on top of each other, wouldn't the AI be confused?