View Issue Details

IDProjectCategoryLast Update
0019276AI War 2SuggestionFeb 17, 2018 12:53 pm
ReporterBadgerBadger Assigned Tokeith.lamothe  
Status resolvedResolutionfixed 
Product Version0.600 Tutorial Engine 
Fixed in Version0.707 
Summary0019276: Long form messages (journal?)
DescriptionThis is added to Mantis at Chris' request. It's from a discussion on the forums

I think Special Factions are a rich area for taunting/in game communication since their behaviour is fully understood in the external code. I'm not sure about being able to report AI behaviour from external code. For example, Threat.cs only controls how the AI weights different planets when considering attacking, so I don't think I can draw any conclusions about where the AI threat fleet is.

But for Special Factions, at the very least, I would like the Nanocaust to send threatening messages.
Since the Devourer routing is in External code, I would consider having the devourer send messages like "Human ships look so tasty" or "I would love to snack on another <most common human ship type at target planet>" when it's heading toward a human planet. We can have a stack of flavourful statements and draw them at random (but not every time, that might get excessive).

If there's the concept of a long-form popup (like the Journal Entries in AIWC) then we could have entries appear for each special faction when it becomes visible, to help a new player understand what's happening. I think that would be a really useful way to teach a new player some of the basics (Run away from the devourer. Free the Dyson Sphere).

https://forums.arcengames.com/ai-war-ii/gui-discussion-2-circa-0-601/msg216747/#msg216747
TagsNo tags attached.

Activities

Chris_McElligottPark

Jan 29, 2018 4:41 pm

administrator   ~0046772

I'm going to push this in Keith's direction. Basically this is going to fall under the category of having a message log somewhere, in some fashion, and letting us write to that at certain events either with voice taunts associated or not. In the case of the nanocaust, I assume they won't be voiced; however potentially I could come up with some freaky sound effects for them instead.

BadgerBadger

Jan 29, 2018 5:29 pm

manager   ~0046775

It would be cool to get some nanocaust-related lines (things like "Commander, we're detecting a surge in Nanobot activity" for when they are going to attack you, perhaps?) But this isn't a make or break thing by any means.

Chris_McElligottPark

Jan 29, 2018 8:28 pm

administrator   ~0046778

Sure, I could build those into the Watch Commander batch that I send over to Alicia next time. Just write up what you'd like, and I can add those in.

keith.lamothe

Feb 17, 2018 12:52 pm

administrator   ~0046991

Last edited: Feb 17, 2018 12:53 pm

For 0.707:

- message log support
-- for an example, search external for:
//World_AIW2.Instance.QueueLogMessageCommand( "What a bore. Retreating from " + planet.Name + " to " + bestEligiblePlanet.Name, "Civilian_MoveOrder_3VeryAnnoyed", threatShipsNotAssignedElsewhere[0], Context );

So there's no current usages, but the above test worked for me.

The raw string-concat is just for the test, though at that size it may be cheaper than a buffer. It's also probably preferable to have a set of strings that gets randomly picked from, but that can be iterated on independently of what was just put in.

Right now all it does is show the message for about 10 seconds (in roughly the same space as tutorial messages go; I'm sure that bit of UI will be redone) and play the sound clip (if any). But it also remembers the passed-in entity's ID, faction, planet, and coordinates, in case you want to have click-to-zoom or that sort of behavior. If you want an overload that can take faction/planet/coordinates without an entity, that's easy to add (in core).

These are sync'd across all clients in MP and serialized with the save.

Let me know if you need anything else on this front.

Issue History

Date Modified Username Field Change
Nov 2, 2017 10:23 am BadgerBadger New Issue
Jan 29, 2018 10:23 am Michael Assigned To => Chris_McElligottPark
Jan 29, 2018 10:23 am Michael Status new => assigned
Jan 29, 2018 4:40 pm Chris_McElligottPark Assigned To Chris_McElligottPark => keith.lamothe
Jan 29, 2018 4:41 pm Chris_McElligottPark Note Added: 0046772
Jan 29, 2018 5:29 pm BadgerBadger Note Added: 0046775
Jan 29, 2018 8:28 pm Chris_McElligottPark Note Added: 0046778
Feb 17, 2018 12:52 pm keith.lamothe Status assigned => resolved
Feb 17, 2018 12:52 pm keith.lamothe Resolution open => fixed
Feb 17, 2018 12:52 pm keith.lamothe Fixed in Version => 0.707
Feb 17, 2018 12:52 pm keith.lamothe Note Added: 0046991
Feb 17, 2018 12:53 pm keith.lamothe Note Edited: 0046991
Feb 17, 2018 12:53 pm keith.lamothe Note Edited: 0046991