Open koosemose opened 7 years ago
Temperature maybe also should be on here? Also with the UI stuff I think what we should do is prefabs as an option, so that yes we have ongoing code creation for UI but you can create essentially 'elements' that are premade elements (could even be code premade) but atleast that way it makes building a UI somewhat easier than having to create some complex hierarchies to get a slider or whatever. Also movement of Gas, Temperature and other stuff to a mod (maybe similar hookups to what I've done with my temperature stuff where it sits ontop of world) is probably a future milestone?
Well the plan is to have as much of the base data as a mod, but with how easily we butt up against performance issues, I don't think we should have too much of the logic (at least anything that has to run with any regularity) as mod, and technically gas actually moving between rooms (via vents, doors and air pumps are performed in Lua scripts. But if too much is in mods, it is much harder to ensure good code (stylecop isn't ran on streamingAssets, and I'm reasonably sure it won't pick up compile errors).
My general thoughts on UI are that the UI itself should be code/data based, but with prefab controls. i.e. to edit a menu, rather than editing the entire thing in the editor, or having to put together each control and customize it via code, you'd instead just do something along the lines of dropDown = CreateDropDown(parent, list)
or possibly even have a data file that creates it, have the data file set a name through which it can be accessed or some such.
Yeh I perfectly agree, and I have a new thing that is perfectly suited for this exact requirement (running regularly is very supported too with immense speed) however I'm still ironing out kinks so I'll keep it as a secret for a little while :P.
On the second point yep that's exactly what I implemented and what I was talking about. However, I did also allow the user (and think we should generally) create their own 'controls' via just doing things like new GameObject(); go.AddComponent
we still need that functionality so utility (cable, ...) can connect to any part of multitile furniture (my attempt to fix that didn't play well with re-connecting of grids)
Yeah that's a good one to add, and I'll probably take a crack at that next.
can we also put improve/update/re-write pathing.. feels like current one is really bad and re-evaluating same paths and failing (so spamming console with failure to traverse) and causing FPS drops.. then the jobs are just hanging and game is in shitty state afterwards
As far as I can see pathfinding is fine, the issue lies in the Job Queue, it's still subpar in evaluating if a job (or inventory for a job) is reachable, and is requesting pathing multiple times.
And I think I found the source of that issue, I missed an inventory.CanBePickedUp, so it was pathing to the stockpile, and being told it can't pick it up, and therefore requesting a new path, and being told about the same inventory so they get stuck in a loop of that, so all crew eventually end up stuck in stockpiles, hammering the pathfinding.
@koosemose can we also add 'make offline documentation' through either doxygen or sandcastle since that'll act like a 'unity like reference' (basically means we don't have to go looking into code to find functions and what they mean). I can set it up if you want, I've just done sandcastle for a few of my stuff and got it working with Unity (a small workaround).
Also update the kaplan board to say Milestone 0.3
Offline docs sounds good, I'll add it later (end of the day for me). And the Kaplan board is a bloody pain to keep updated, particularly since it seems oriented towards a more standard project where a core dev team is working on most of the features (and can each edit it as each stage progresses), as is, I have to keep track of every element and can't know what stage something is at unless it's either in an issue or a PR, in which case it's progress is already documented.
Yeh that's true, maybe just update the name for now, then later when we get more people it'll become easier to manage?
So long as quill is absent it will be a pain to maintain (as I have no way to give other's the authority to edit it or anything else, so it will only ever be me maintaining it).
Wait really? Maybe since quill is absent you should contact him asking to be given administrator permissions since basically you are 'running this'? Either by email or a ping?
We have reached (passed) the 0.2 milestone, having missed quite a few things from the milestone. Hopefully this time we can meet the goal. Presently most things on this list are things that didn't make it into the previous milestone. I would like suggestions for additional things to include for our next milestone (even if it's only projects you are currently working on)
0.3
Small
Large
Ongoing tasks
Bugfixing, always Bugfixing Component System
Continuing UI improvements (discussed many places)
Future Milestones/Optional tasks for ambitious folk (Will require further discussion before implementing)
Storyline #431 (likely best for a much later milestone) Lighting, Lights and Darkness #533 (Possible library for 2d lighting: https://github.com/f15gdsy/2D-Light-of-Sight-Unity ) Minimap #566 Improved Map Generation #306 Gravity