This topic is for discussion of map #1804: Creeperboy
(http://knucklecracker.com/creeperworld3/queryMaps.php?query=thumbnailid&id=1804)
Author: Xeos
Size: 120x120
Desc:
CreepBoy Color - Agent Creep World Domination.. PAC Puzzle map. Compete against other agents for the best time. This map was a collaboration between Legola33 and Xeos. Enjoy! #PAC #PlayAsCreeper
This is a map that Ashley conceived as an 80's Retro style and has around 1600 individual image placements on it. Just trying new things and seeing how it goes.. Good Luck !.. and by the way, a little tip is you can use the Field from the very start.. ;)
also, it's a little on the hard side ...
Apparently this is difficult. I was worried it would be too easy.
Good map.
too bad it feels like a drag.
Quote from: Xeos on March 06, 2015, 01:37:07 PM
This is a map that Ashley conceived as an 80's Retro style and has around 1600 individual image placements on it. Just trying new things and seeing how it goes.. Good Luck !.. and by the way, a little tip is you can use the Field from the very start.. ;)
also, it's a little on the hard side ...
it's a masterwork of mapping, but it's not clear whats happening, at least at the point i've reached.
which is about halfway across diagonally with a few spurs of D/C spreading out towards pipes.
Spoiler
so basically i got from the text that i need to overcome the numbered pumps, but the thing i think i'm supposed to destroy near the pumps isn't clear. at least to me ::) so i have spread a load of C about and knocked out a few relays, but i don't seem to have affected anything ??? any more hints?
so i'll come back to this tmmw when i'm rested i guess! 8)
Quote from: teknotiss on March 06, 2015, 04:10:34 PM
Quote from: Xeos on March 06, 2015, 01:37:07 PM
This is a map that Ashley conceived as an 80's Retro style and has around 1600 individual image placements on it. Just trying new things and seeing how it goes.. Good Luck !.. and by the way, a little tip is you can use the Field from the very start.. ;)
also, it's a little on the hard side ...
it's a masterwork of mapping, but it's not clear whats happening, at least at the point i've reached.
which is about halfway across diagonally with a few spurs of D/C spreading out towards pipes.
Spoiler
so basically i got from the text that i need to overcome the numbered pumps, but the thing i think i'm supposed to destroy near the pumps isn't clear. at least to me ::) so i have spread a load of C about and knocked out a few relays, but i don't seem to have affected anything ??? any more hints?
so i'll come back to this tmmw when i'm rested i guess! 8)
At the numbered points you can see half pipes which is the entry to the pump - if you force some creep into those pipes it will destroy the pump.. - when you have destroyed all 4 you win :)
Amazing graphics, amazingly difficult to advance despite the relatively sparse defenses - probably due to the tight chokepoints and lack of PZs. Very neat design though.
Quote from: Asbestos on March 06, 2015, 05:15:35 PM
Amazing graphics, amazingly difficult to advance despite the relatively sparse defenses - probably due to the tight chokepoints and lack of PZs. Very neat design though.
Thanks Asbestos :) I found it pretty tricky myself and it will not be to everyone's liking, but the work that went into it was epic so thanks for showing some appreciation :)
Quote from: Xeos on March 06, 2015, 04:19:11 PM
At the numbered points you can see half pipes which is the entry to the pump - if you force some creep into those pipes it will destroy the pump.. - when you have destroyed all 4 you win :)
that's what i thought, but which pipes? on pump 4 the ones above didn't seem to do anything, and the one below on the right (without AC) also seems to do nothing? hmm ???
anyway i'll have another bash tmmw still great map, maybe should be rated "really, rather, hard" :D
Here are the points you need to push the creep into
Xeos, incredible map! Very cool design concept and original PAC idea. My only beef with it was the lag. Probably from the 1600+ graphics. I really didn't realize what I had to do until after I killed the second pump, then it clicked. I caught the signature too.
hmm i was pushing C into that one? maybe not enough i guess, hey ho, i'll have another bash later anyway.
the only serious issue is with the lag, that will be to do with the images!
could you "prebuild" the images into larger ones in an image editor and then effectively import far fewer images to the game perhaps? i dunno but there should be a way of treating the whole overlay as a single or at most 10/15 images. :)
Congrats to you and Ashley for another superbly designed map, Xeos! :) Yes, it was a bit of a slog, but I didn't mind because it would be too easy if it had too much strength behind it.
Loads of hard work there - thank you. :) I've only had one run-through at this point, but I know I can do a lot better time-wise. I thought the "Compete against other agents for the best time" statement was a very nice idea. It's a reason we re-run them, after all, so making it part of the aim was clever. :)
This is a very neat map. My only problem was the lag, this one seemed to give me way more problems being slow than other maps of comparable size.
Also like to say congrats on making such a great looking map, I can't imagine the effort involved!
I actually found the game play to be a bit tedious, pushing creeper through thin spaces is quite laborious but not necessarily challenging.I still enjoyed it as it was so unusual but would not replay unlike your last map which I could replay many times.
I would say the graphics are initially very confusing, they seem to hide the structure of the map so you can't initially work out where the networks and weps are, if this was made on a bigger and more complicated scale it could get really frustrating. This map was basic enough that you could cut supply lines and work it out after some studying and so still playable.
Hope you find time to make another map before long, you certainly do have some far out and amazing ideas!
Looks like a really cool map, but it's super choppy on my MacBook Pro. Maybe some heavy polling CRPL code or something.
Quote from: Hubs on March 06, 2015, 08:44:09 PM
Xeos, incredible map! Very cool design concept and original PAC idea. My only beef with it was the lag. Probably from the 1600+ graphics. I really didn't realize what I had to do until after I killed the second pump, then it clicked. I caught the signature too.
Thanks Hubs ( The credit for the concept and the design goes totally to Ash (Legola33) ) .
Just one question, why do the static images cause so much lag? What things need to be considered when designing a map in relation to lag? are there any tips etc?
Static images will generally cause lag in most video games, as there is rarely opportunity for the engine to know that those images are static, especially when they are on the playfield. In addition, game programmers rarely have the time to work on such a time consuming optimization task as static image detection. As to things to do to optimize code:
- For range detection (a < b) => (a^2 < b^2) and a^.5 is expensive.
- Terrain modification is expensive. Avoid.
- Scanning the map need not be done every frame for every scanning task.
- Precalculate and store. (an example would be collapsing static images into a single image.)
- Fail fast tests. (Look for creeper where it was found last time first.)
- Do not use Delay. It creates chop as the min delay is actually 2.
Quote from: warren on March 09, 2015, 08:35:00 AM
Static images will generally cause lag in most video games, as there is rarely opportunity for the engine to know that those images are static, especially when they are on the playfield. In addition, game programmers rarely have the time to work on such a time consuming optimization task as static image detection. As to things to do to optimize code:
- For range detection (a < b) => (a^2 < b^2) and a^.5 is expensive.
- Terrain modification is expensive. Avoid.
- Scanning the map need not be done every frame for every scanning task.
- Precalculate and store. (an example would be collapsing static images into a single image.)
- Fail fast tests. (Look for creeper where it was found last time first.)
- Do not use Delay. It creates chop as the min delay is actually 2.
Thank you for taking the time to post this :) Can you tell me what you would use in place of the delay feature? There is quite often a need for me to use something like this.
Many thanks in advance
Virgil has kindly written a timer family of functions, but creating your own is so simple I just do that.
<-t 1 sub ->t
<-t 0 lte if
<-t <-tDelay add ->t
@body
endif
OR
<-t 1 add <-tDelay mod ->t
<-t eq0 if
@body
endif
If the scanning/modification operation is particularly expensive like on the map Mandelbrot, I do something much more complicated. I store a loop variable globally and return periodically from the loop.
Thanks for this :) I will use this method in future :)
The only other thing I haven't understood as yet is how to use variables across scripts. I want to take the information I have put into a variable in one script, and modify it in another script on another unit. Is that possible?
Absolutely. GetScriptVar and SetScriptVar. Their use is a little complicated.
Script1.crpl:
$isTheScript1:1
$Activated:0
<-Activated if @body endif
Script2.crpl:
<-activated if
"isTheScript1" 1 GetCoresWithVar 0 do
->unit
<-unit "Script1.crpl" "Activated" 1 SetScriptVar
loop
endif
Alternatively, you can replace $isTheScript variables with $uniqueID variables. The do loop is still required to prevent bugs if an ID you are looking for is missing or duplicated.
Edit: Usually I split this into to two steps. By putting the (GetCoresWithVar) inside the (:awake Once) I only have to calculate the unit variable once the entire game. This requires that the partner core must exist at the beginning of the game or at the creation of the core. The beginning of the game is the first load after you click compile scripts in the editor for reference.
Quote from: warren on March 09, 2015, 07:44:54 PM
Absolutely. GetScriptVar and SetScriptVar. Their use is a little complicated.
Script1.crpl:
$isTheScript1:1
$Activated:0
<-Activated if @body endif
Script2.crpl:
<-activated if
"isTheScript1" 1 GetCoresWithVar 0 do
->unit
<-unit "Script1.crpl" "Activated" 1 SetScriptVar
loop
endif
Alternatively, you can replace $isTheScript variables with $uniqueID variables. The do loop is still required to prevent bugs if an ID you are looking for is missing or duplicated.
Yes you're right, that looks a little too complicated for my current level of scripting knowledge but I will play with it and see how it works. Thanks again for your help :)
I think one of the reasons there is lag is because of the way i did the pump animations. So I am looking at that and working out how to use timers now Warren has kindly given me some excellent advice :) Hopefully that should make it better.. ;D
This is a really great map I've played. I have to admit, like teknotiss, it's unclear where you start from. Didn't take too long to understand, but I went from 2, to 1 (which I did without paying attention to), then 3, and then 4.
I think the graphical detail is extraordinary. Even to the point where you have one bit of the wall near the ground as a floor tile to make it look like the creep has depth to it (and that it's actually flowing if the creeper runs off the wall).
The PAC game itself was kind of meager. The Storyline isn't my type so I won't base it off of that at all. The entire game looked like it was a lot of work (and I bet it was).
In all, grats on the work. It was really fun to play. Only if it was a lot easier to make maps like these. ;)
Quote from: CrusaderDeleters on March 14, 2015, 11:20:20 PM
This is a really great map I've played. I have to admit, like teknotiss, it's unclear where you start from. Didn't take too long to understand, but I went from 2, to 1 (which I did without paying attention to), then 3, and then 4.
I think the graphical detail is extraordinary. Even to the point where you have one bit of the wall near the ground as a floor tile to make it look like the creep has depth to it (and that it's actually flowing if the creeper runs off the wall).
The PAC game itself was kind of meager. The Storyline isn't my type so I won't base it off of that at all. The entire game looked like it was a lot of work (and I bet it was).
In all, grats on the work. It was really fun to play. Only if it was a lot easier to make maps like these. ;)
Thanks for your kind comments :) It came from an idea that Ashley (Legola33) had and we both thought it would be a cool thing to do. It turned out to be quite tricky especially getting the tiles under the images to work properly because they had to be built blind. It took around 70 hours of work in total to make and test so we are pleased that there are some people that have enjoyed it :)
Totally stuck after getting the #4 to flip, have no idea how to continue not only the stronger anti creeper emitters strength 100, and I only have strength 10 and 50 emitters, but then the mortars do their work on me while the anti creeper fills up the whole map. Need a walkthrough for this one.
Quote from: hbarudi on April 10, 2015, 04:21:20 AM
Totally stuck after getting the #4 to flip, have no idea how to continue not only the stronger anti creeper emitters strength 100, and I only have strength 10 and 50 emitters, but then the mortars do their work on me while the anti creeper fills up the whole map. Need a walkthrough for this one.
The way the map works is that it is constantly creating anti-creep so the time you take is important. If you take too long it will be too powerful to overcome. There is an image above in this thread which shows the four positions in the map where you need to push the creep into to blow up the pumps. So the key is to push/drag the creep around the channels in the map to get them there- you will also notice some collectors across the channels - They feed the power to the cannons etc so destroy them too.
It was kinda confusing for a pac but I really enjoyed it. Sorry I was forced to give it a 10 as I really think that it was under rated. Thanks I had a lot of fun with it.