May I abstract the Issue, claim to do normally all differently, and therefore cobtradict generally each specific Solutuion inclusive that above and ask for generic Support resp think your Idea concerns to Meaning for Players to codify Knowledge in Way of Procedures to handle easier frequently upcoming Tasks like here the Colonization?eleazar wrote:Some complaining about colonization in another thread (forget which) got me thinking.
Colonizing is somewhat of a pain, especially when you have a decent sized empire with several species. It is easy to miss a step:
1) Identify planet for colonization
1.5) Possibly build shipyards or wait for population to grow, so ship can be built
2) Enqueue ship of correct species
3) Wait
4) Notice that ship is completed, Send to planet
5) Wait
6) Notice that ship has arrived, colonize
...
I wont reduce Scope more than necessary and dont matter if Players would do all manually or write single Script, launch it resp press Button and monitor Display how they win Match while other try Hybrid of both Approaches. You may limitize that Approach for this and that but I wont add more than these 2 Cents to keep that Limits more distant while I can help to move that Limits more distant - but I wont argue for more than already done. For this Proposal did not said anything about Meanings for Player like visual Development Gear to construct Case-Handles or Loops etc with the Mouse or conventional via Editor - so dont tell me PlainTextEditor is not alright or Visual/symblic FO Object-Editor is challenging - I did just generalize Scope of your Idea and explained its generic Solution which gives Player most Opportunities to handle the Game with custom Code without cheating that Way as this should not offer other Meanings thna that used by Client and Server should know what is Cheat and what is Utilization.
For Colonization I do different Things according to Contraints from Situation and Location and Use, eg BridgeHead, Wall, Sci or Production. You could do that perhps with 4 diff Procedures but finally it solves a Matter in a Way a Player would perhaps prefer different. So I ask for Support of other Strategies than your which means not my personal alone. Custom Scripting could do it. Need IF,WHILE,CLASS,METH,ARITHMETIC and Comparision, any basic DataComplexType resp DataStructure like Array, List, Set, LinkedList, DoubleLinkedList TripleLinkedList (ListSkeleton) etc etc or BTree or or or.. anything which can contain more than one Item, Variables of Course resp Field in OOP Terminology while Method is Ability and Things can roll on. That shall say; it is not that difficult like it seems like. If you look for Minimalism consider Turing here, what means Minimum is really minimal while Idea for Comfort may be different, most Comfort gives OOP, which means Functions with limited Scope by Class or Object, what means technically that you can name different Methods from different Classes same and the more tricky Point is to make it looking good for the Game as Players wont feel for attracted when can write Programms inside Game. What you explains is Kind of virtual Programming with a Gear that is not Turing complete even if it does that it is intended for really comfortable.
Important KeyWords in that Scope: Declaration and Definition and Call/Access, Class, Object, Method and Property/Atrbiute, CaseHandle alias IF and Loop via WHILE and FOR, Operators for Arithmetic and Boolean Logic,
any primitive or advanced Complex for Data like Array (hello, C) or LinkedList (hello, LISP) -- List or Array does not explains something about Syntax but DataStructure and necessary InterFace, Calculate directly Item or hungle along ItemChain resp rebuild/rejoin DataStructure for Modifcations like Insert or Remove. List is fine for local sequential Modification (insert/remove) and Array fine for Random global Access (array[a*b+c]) - it concerns from PayLoad and ProgrammingStyle what you prefer the more - when you add BTree you can even build Structures resp structurized Data with, eg List like Thing with Folder for Star and Planets as Files etc. Consider C Meaning struct for but dynamical. BTree merges the List-Branch and the Array-Branch which else appear incompatible.