Not a member yet? Why not Sign up today
Create an account  

  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Sep/October sprint mega thread continued


Progress update on the Sep/October work.

As part of the upgrade to the AI I decided it was time to re-work the way that vehicles are controlled. To explain what I mean by "the way that vehicles are controlled" I will list the various buzzwords associated with this complicated system
  • Water drive
  • Air drive
  • YawLeft/YawRight/NoseUp/NoseDown/RollLeft/RollRight/Increase/Decrease/MainPropulsion (in both air and water variations)
  • AdvControll(TGYHUJIKOLUpArrowDownArrowLeftArrowRightArrowPrimarySecondaryTertiary)
  • Drive maintainers
  • Jets used in air/water/both
  • Wheels used in air/water/both
  • GP PIDs controlling ad hoc components for various inputs
This system is being largely replaced, and will look like this
  • AdvControl(TGYHUJIKOLUpArrowDownArrowLeftArrowRightArrowPrimarySecondaryTertiary). This remains untouched, except for the fact that it the various buttons will be re-mappable.
  • Drive maintainers- as above, maintained to keep the system working
  • Yaw left/ Yaw right / Roll left / Roll right / Nose up/ Nose down/ Forward / Backward / Strafe left / Strafe right / Hover up / Hover down / First Drive / Second Drive / Third Drive / A / B / C /D / E / Custom-named-inputs
  • GP PIDS will be updated to separate the "input" from the "output" so you can make more specific combinations
So regarding the third bullet point you'll be able to hook many different blocks up to the "inputs" listed. You can set the response anywhere between -1 and 1. And you can listen to as many commands as you want. AI will be customisable so you can tell it to drive the first and/or second and/or third drives. So a practical example of this would be to have some upwards facing thrusters that have a +0.5 response to hover up, and a +0.5 or -0.5 response to Roll (depending on position). They might also have a 0.1 response to first drive in order to put some upwards pressure on constantly when moving forward. They might also have some various strong responses to 'A' so that when it is triggered it spins the vehicle quickly in an evasive manouevre. 'A' will be commandable by the player from the keyboard (SHIFT + 5, probably, but remappable), but could also be the output of an AI missile avoidance routine that calls "A" whenever a missile is within 100 metres of the vehicle.

The game will have a remappable ship commands (ship's wheel layout, more or less) and a remappable set of universal vehicle commands (Vehicle Controller layout, more or less). As well as having the remappable AdvController inputs.

The other main thing I am doing is updating way variables are stored for blocks to achieve the following ends
  • Variables saved, loaded, "clamped" automatically
  • Variables transferred over network when changed, and only those variables that are changed, are transfered, and in the smallest number of bytes possible
  • Variable change functions managed
  • Copy paste added universally for all blocks, and all data modules.
  • Save file size minimised and less hackable, Blueprint file load time minimised
  • Much less code to maintain and easier to write new code
  • Semi automatic presentation of the variables on the UI
  • Automatic saving and loading of colours, vectors, GUIDs, strings ,etc.
This has gone extremely well so far, and I think it will have a very large positive impact on the multiplayer experience.

I don't know how long it will take to get all this stuff done but I think end of November for dev test of these features is likely.
Reviewed FtD on steam yet? It's the #1 thing you can do to help FtD (and future games by Brilliant Skies!), so please take the time!
Bug tracker - view, "upvote", comment on and add all bugs here.
Request tracker - request new features here
support - private portal to service desk

Messages In This Thread
Sep/October sprint mega thread continued - by Nick Smart - 2018-11-07, 10:29 AM

Forum Jump:

Users browsing this thread:
1 Guest(s)