Introduce biased movement to the Singularity
Created by: dylanstrategie
Other changes :
- Singularity name in lowercase, changed description
- Singularity name and description no longer changes for the admins who like to add custom names
- Shitloads of formatting and some typecasting
- Chance for Singularity to gravitate to "target" (singularity beacon) is now 75, up from 60
- "Reduced in size" stylized into "shrink", "look" into "stare"
Main change :
- Singularity movement is now randomly biased instead of true random
- Every time the Singularity moves, it uses a variable (last_movement_dir) to remember its last direction
- If the Singularity does not have a forced movement and is not bearing down towards a target, it has a probability of 75 to repeat its previous movement. This mimics inertia and guarantees that the Singularity will get somewhere (total movement is still truly random, but on a small sample it is biased)
- If that checks fails, it simply picks another direction. If the last_direction_dir led to a falure (generator field) it will generate a new direction instead
Screenshot of local testing. This was done in five minutes. Testing was planned to go for ten minutes (shuttle call time) but the Singularity started fucking off into space under TEG so I cut the testing short :
Discussions and suggestions go below