Hello all,
I have had various ideas for CRPL custom maps, and have implemented some previously.
However, rather than clutter the maplist with things which aren't all that much fun, I thought to place some future ideas here.
These include:
- Machines making machines making...
- A construction station for a greater unit, which has player units slotted into it periodically, in order to add functionality, eventually becoming very powerful.
- Emitters that breed, die, and can mutate (for different vulnerabilities, abilities, ...)
- An credits-style game where the player is loyal to the Loki.
- A game of Battleships, player versus Creeper, moving Pulse Cannons to fire.
I put these here to save people playing a "proof of concept" map.
Anyone who likes an idea, please say so, or suggest something. I haven't been here long enough to know what is/is not going to be fun for others. Thus do I ask for feedback.
Also, the Breeding/Hydra Emitter seemed to be appreciated the first time, but not later, in a more in-depth variant. Why, and how to fix it? (Or was it only enjoyable as a once-off?)
Quote from: GoodMorning on March 25, 2016, 08:48:19 AM
I put these here to save people playing a "proof of concept" map.
Actually, I would applaud proof-of-concept maps. Just put in a few challenges, that is easily done.
Check my "creeper cannon" map. It´s very simplistic, but shows that the cannon has a minimal range, and you can play around a bit by either trying to save the forge or building your own after the prepalced one is destroyed. It still is basically a proof-of-concept or demonstration map.
Honestly, without being mean spirited about this: With the amount of "achievement" or "mostly empty, but two emitter one a featureless plane" maps in userspace, proof of concept maps would be better and more interesting by a mile.
If I would have to chose, and I´ve given this a lot of thought ( hence the late reply ), from the ones you suggested I´d like to see the mutating emitters map. Every X seconds, an emitter is spawned either wandering to the new location or spawning on site, extending a digitalis network. This would give a nice escalation phase as when you don´t deel with the multiplying emitters, you will get run over.
However, this needs to come with a certain set of parameters.
1) Limit player expansion or energy available.
2) Limit emitter expansion radius.
3) Limits on where you can spawn an emitter ( no spawning in players base or defensive line ).
4) Change the emitters output values based on age. As they grow, they spew out more. Maybe even make younger emitters start as AC and switch to C as they grow.
5) Once all the territory to expand to has been expended, instead of emitters they will grow Spore towers which grow in power over time
Gogogo, you have two days, then I want to play it. ;D
Edit: Added point number 5 to the list of things that the creeper does to "make your life miserable". ;D
I have commitments, but will have a go after a time.
Search "Creeper Breeding" for the last map I did on the same line.
Reply edit:
The Spores would help, and stop the map from being impossible to lose. It will be more than two days... ...much more, to do it well.
After some consideration, and a partial implementation, I have concluded:
1. There are two ideas here.
1a. The constructor-unit, making part-random sub-units. (Part-done, easier to balance)
1b. The breeder-unit, making pseudo-random clones. (More fun, harder to balance, longer to make)
2. Currently I can't do much with either, as life is getting in the way.
I have put the first one on hold. The second, I will do when I have time, but don't expect it soon.
The partial implementation of the first idea is attached, for anyone who wants it. For my part, it's going to be a while before I return to it, so if anyone wants to lay claim...
Holy moly! :o
I need to free me up some time to look at it! But I definitely shall!
As I said, take it and welcome.
The other one will create units that actually evolve (in the literal, definitive, mathematical-selective sense...) which is why I really want to do that.
The one you have feels like an adaptable idea. A thought on both, though: Perhaps terrain levels could be used to contain them? That way we can delimit a customised area easily, and the player can bottle them up.
An alternative is a hugely inefficient full-map SetTerrainOverride reacting to TERPing, which can allow all kinds of interesting stuff.
(Also, I just found out that void+digi = height 0 for Creeper. I always thought it was height 1, or something very special...)
OK, for anyone who wants it:
This is a code excerpt from the evolver, where we set most of the child's param.s.
It will refer back to this manager core for the drift rates, etc when it breeds.
If anyone has suggestions, now is the time, before it becomes rewriting.
The core will eat Creeper, and the better it is, the more it eats. Currently they can wander through AC without harm, but will rapidly starve.
Entire design is mutable, subject to feedback.
#Here we go... (this version deems drift to be constant, so there's no mutation/stability multiplier)
"GrowthMetabolicInterval" @MutateRange @SetSelectedEvolverScriptVar
"Eat" @MutatePC @SetSelectedEvolverScriptVar
"StomachSizeMul" @MutateRange @SetSelectedEvolverScriptVar
"LifeInCycles" @MutateRange @SetSelectedEvolverScriptVar
"MetabolicInterval" @MutateRange @SetSelectedEvolverScriptVar
"ExpectedChildren" @MutateRange @SetSelectedEvolverScriptVar
"BreedAfterCycles" @MutateRange @SetSelectedEvolverScriptVar
"BreedInterval" @MutateRange @SetSelectedEvolverScriptVar
"Health" @MutateRange @SetSelectedEvolverScriptVar
"NullifierDamage" @MutatePC @SetSelectedEvolverScriptVar
"SniperTargetChance" @MutateRange @SetSelectedEvolverScriptVar
"BeamTargetChance" @MutateRange @SetSelectedEvolverScriptVar
"DigiLayerChance" @MutateRange @SetSelectedEvolverScriptVar
"TerrainTolerance" @MutateRange @SetSelectedEvolverScriptVar
"Speed" @MutateRange @SetSelectedEvolverScriptVar
#Now calculate the growth cost and feed bill. Formula not written yet, but will be a mix of constants, flags, exponents and linears.
#This will require calibration, as it will be a line somewhere between OP, UP, Creep-devouring, and mainly pop-limited.
oh my, i thought this was just going to be creating emitters near-by and increase the new ones stats... you guys are amazing at this 0_0
i geuss it would eat creeper thats at its coords (by removing it or setting anti-creeper) and have a chance of evolving once its "full" of creeper and that chance would turn into a chance for one of its stats.
The current plan is that, when it meets the criteria for "breeding", it will randomly choose stats to keep/change, and then make a "growing" child-core.
I do like the idea of something that gets stronger as it eats Creeper, but it would have to breed late, and then it would be almost indestructible AND spawning...
Another idea, but I will finish this first. I don't know that they would work well together.
Quote from: GoodMorning on April 12, 2016, 09:59:09 PM
The current plan is that, when it meets the criteria for "breeding", it will randomly choose stats to keep/change, and then make a "growing" child-core.
I do like the idea of something that gets stronger as it eats Creeper, but it would have to breed late, and then it would be almost indestructible AND spawning...
Another idea, but I will finish this first. I don't know that they would work well together.
eating creeper could requrie more and more creeper each time, so it gets to a point were the requirement is over 2000 and it cant get enough?
Could be...
Having something that will eat until it bursts would be interesting. Perhaps it would spawn up to two offspring before bursting, which could do the same, etc...?
Quote from: GoodMorning on April 14, 2016, 02:41:29 AM
Could be...
Having something that will eat until it bursts would be interesting. Perhaps it would spawn up to two offspring before bursting, which could do the same, etc...?
Oooohh, I love this idea. Like snipeable units that just nomnom on creeper until they spill double the amount and two childs. :o
It seems that double AND two children would be OP.
On the other hand... if they gradually toughen, and don't die until they get up to ~2K Creeper contained... And they are not too hard to blow up young... And they grow, gaining health and resistance... But slow as they do...
Then they might stop being Beamable, then Snipable, then Nullifiable, then pop... That way the invincible ones can be killed by overfeeding, but you have to be careful of destroying all Creeper.
Maybe it should eat AC and shrink, but if it spawns in AC it becomes an AC version.
This would be easier to make than the factory or evolver (The evolver is close to done now,but it will be a while before I get back to it). Could be fun to play with an a variety of places. Could be a high-Creeper nest, making a near-conversion density area, or a Bickford effect.
Could we limit the terrain heights?
A bit of calibration could give us a form that eats Creeper, but pops and tries to spill, say, 2400 Creeper, making about 2K AC, or vice-versa.
(Note: don't let this type eat AC in your base.)
Quote from: GoodMorning on April 14, 2016, 05:48:31 AM
Maybe it should eat AC and shrink, but if it spawns in AC it becomes an AC version.
--------
Could we limit the terrain heights?
Well, terraforming should probably be disallowed then. If you/we use terrain as a limiting factor, it must be a static variable.
I like the AC-shrinking idea, not so sure about flip-emitter style nomnoms.
I have reserved a few hours on the weekend to finally take a good look at this. Time´s hard to come by. :-[
I know. I'll be out of action for the next week or so, unless I can steal time from other things.
I was thinking of a few "passes" that insulate the main mass from your base. Take a pass, Terp it to height 10, and the poppers won't be able to return.
I was thinking that we could make the AC form an investment, so that a very limited AC supply can be boosted by investing in poppers. You'd have to put them in a pit to stop them taking all the build space, or maybe make them be shootable...
Could be interesting, a map where the poppers will drain your Beams (if left on), but they are eventually the only defence against Creeper.
They could eventually become an AC Emitter - workalike...
I've managed to find time in the local afternoons prior to now to work on the evolver, and here's V0.1.
It probably has bugs coming out of nonexistent ears, but it looks OK.
The testing I have done so far:
Spoiler
Proven that it can reproduce (for a while) and will age and die.
To do this, I put a 2K Emitter on a blank map, put down a default EvolverEnvironment, and watched.
Note that the on-death trace message is for debug, only appearing in edit mode.
Spoiler used to avoid clutter, it's not going to spoil anything.
I shall test more as time goes on, but this
seems to mainly require tuning.
I would like to ask for feedback, suggestions, &c.
As for any script I create (upon uploading it to CS or here) I now deem this "community-ware" (anyone can do anything they like with it, but please put improved versions up for others to enjoy.)
Instructions for use:
- Attach the EvolverEnvironment script to a core, with Evolver in the scripts directory.
- Supply Creeper to make the units build.
- Don't create an Evolver yourself, it won't do anything.
Quote from: GoodMorning on April 18, 2016, 02:23:59 AM
I've managed to find time in the local afternoons prior to now to work on the evolver, and here's V0.1.
It probably has bugs coming out of nonexistent ears, but it looks OK.
The testing I have done so far:
Spoiler
Proven that it can reproduce (for a while) and will age and die.
To do this, I put a 2K Emitter on a blank map, put down a default EvolverEnvironment, and watched.
Note that the on-death trace message is for debug, only appearing in edit mode.
Spoiler used to avoid clutter, it's not going to spoil anything.
I shall test more as time goes on, but this seems to mainly require tuning.
I would like to ask for feedback, suggestions, &c.
As for any script I create (upon uploading it to CS or here) I now deem this "community-ware" (anyone can do anything they like with it, but please put improved versions up for others to enjoy.)
Instructions for use:
- Attach the EvolverEnvironment script to a core, with Evolver in the scripts directory.
- Supply Creeper to make the units build.
- Don't create an Evolver yourself, it won't do anything.
ummmm looks really cule, but the guys run off the creeper (are they supposed to run around?) and then when the creeper gets to them they say to far aged and self destruct o.0
PS the original spawner did spawn different evolutions of guys, but when they died and reproduced the "child" died instantly after moving a couple blocks o.0 if i could get a screen recorder i would show you
Thanks. I spent an hour or so testing earlier, and fixed those bugs, along with a few others. I was right to think that it was as buggy as the proverbial.
I'll put V0.2 up when I can get a stable connection.
As promised, V0.2
Now without dangerous game-stalling infinite loop potential, most seemingly random deaths, and bugs when breeding.
Now with images indicating growth by opacity, and a field to collect nearby Creeper, making these things dangerous.
Note that it's still quite badly tuned, and needs a lot of Creeper.
Next up is larger stomachs, more likely Sniper and Beam vulnerabilities, and an update to the move location choice.
(Currently we try three nearby locations, and if we can reach one without dying, we go. Otherwise, we try to move in a compass direction, and only if that's impossible, stay put.) (New form will look at hunger and gives Creeper priority if hungry, and may even avoid AC. (If it's hungry, it will try to eat AC, making it hungrier. (At this point.)))
Starting to feel like a game might be built with it, but they're still easily killed in masses by Berthas.
Ok, havent actually looked at the code so im not entirely sure if this is supposed to happen (i wouldnt know even if i looked :\ ) but the enviorment core constantly shows some changing numbers for a couple minutes, then shows a 2 when you hover over it with the mouse. the "children" work now though i found they will run straight into AC when i put it into the map o.0 especially when they started moving to a spot previously covered with creeper, but when it gets there isnt. its worsk good, if you ask me.
PS havent seen a digitalis spawning evolver, did you remove this?
In order:
Environment core shows the "population" as popup text, which represents the number of Evolvers which consider it their "Parent".
(I can't recall if that version had the trace turned on on it.)
The Evolvers don't yet have AC avoidance, but aren't harmed unless they try to eat it. They also are able to move outside the Creeper, so that they are in some way dangerous (can drag Creeper to structures).
They should still be able to make Digi, but the DigiLayers are expensive. It's a probability based thing anyway.
They can also currently be invulnerable to one or both of the specialist weapons (Beams and Snipers), but are very expensive/hungry if they are.
The metabolic interval is the time between digesting. When the stomach isn't full, it will eat anything it finds, even AC.
I'm trying to tune it, so that it won't need so much Creeper, without making it OP.
The big determiner is the movement. I'm not sure if it should be aggressive, and it looks like the terrain height needs to be a bit more flexible.
I'll put up V0.3 when I've made a new movement alg. Currently, it works, but it's just a gimmick, not too strategically important.
Any other thoughts appreciated, but the new version will be delayed again... life gets in the way so!
Quote from: GoodMorning on April 19, 2016, 08:19:59 PM
In order:
Environment core shows the "population" as popup text, which represents the number of Evolvers which consider it their "Parent".
(I can't recall if that version had the trace turned on on it.)
The Evolvers don't yet have AC avoidance, but aren't harmed unless they try to eat it. They also are able to move outside the Creeper, so that they are in some way dangerous (can drag Creeper to structures).
They should still be able to make Digi, but the DigiLayers are expensive. It's a probability based thing anyway.
They can also currently be invulnerable to one or both of the specialist weapons (Beams and Snipers), but are very expensive/hungry if they are.
The metabolic interval is the time between digesting. When the stomach isn't full, it will eat anything it finds, even AC.
I'm trying to tune it, so that it won't need so much Creeper, without making it OP.
The big determiner is the movement. I'm not sure if it should be aggressive, and it looks like the terrain height needs to be a bit more flexible.
I'll put up V0.3 when I've made a new movement alg. Currently, it works, but it's just a gimmick, not too strategically important.
Any other thoughts appreciated, but the new version will be delayed again... life gets in the way so!
this makes a lot more sense now, could i integrate this into my map after its done?
PS playing around with it, the guys dont seem to die unless they cant eat or try to eat AC (i havent used any towers in my testing yet) so they muliply infinitely, going faster and faster. i imagine it would get to the point were they kill each other cus there isnt enough creeper to eat, but this seems a little OP
Exactly. I need to ramp up the Sniper- and Beam- invulnerability rates. Calibration.
Feel free to use it, if you think it's good enough.
Revise that. It's the vulnerability rates that need to increase.
Here are the newer versions, due to a delay evaporating.
They will now be adventurous, unless they look like getting hungry. i.e. Over 50% stomach: goes as far as possible. Under 50%, heads for Creeper. (Pathfinding now lags somewhat on mazes, due to FindPathTerrain. I'll fix it if it becomes serious.)
For some reason the children seem to be evolving away from the vulnerable states, in defiance of probability.
They should breed toward the cheaper "shoot me with anything, I'm weak!" state, in the absence of an influence to the contrary.
i.e. They should have no reason to be invulnerable unless you kill the vulnerable ones.
They're now becoming invincible automatically, although this should rapidly kill them.
Either RandFloat is biased toward lower values, or I have something backwards.
Anyway, enjoy. Feedback appreciated.
Debug: More in the popup text, and the trace utilities are still there, though the trace is not shown in this build.
OK, I've rebuilt the pathfinding, tuned it a bit, fixed a bug or two, and added a timer so that these will die if they don't get Creeper for a long time (So it doesn't clutter your base with build attempts), or if it takes too long to grow (So it doesn't clutter the map with part-built units). There have been other changes, but they were minor and usually bugfixes.
I currently have three things that need to change, and then this is ready to go.
1) Tuning. Currently, everything happens fast, so it is easy to debug.
2) Vulnerabilities: For some reason, these evolve toward invincibility. They should do the opposite. Could someone who hasn't built every line take a look? I can no longer see the wood for the trees.
3) Strange Digi bug. The Digi grows up to a point, then stops. Hitting "Delete Digitalis" causes it to work properly when it regrows. Screenshot attached.
Anyone have further thoughts/comments?