Knuckle Cracker

Creeper World 3 => Custom Map Discussion => Topic started by: pawel345 on February 04, 2014, 01:08:28 PM

Title: Pass the map 2-Let's make a map together
Post by: pawel345 on February 04, 2014, 01:08:28 PM
Topic locked, move to Pass the Map 3 :D


Rules:
1. You can make changes to the map only if none has LOCKED the topic.
2. To make your tile make a post in this thread saying LOCKED. Then download the map form the latest UNLOCKED post.
3. After editing, FINALIZE your map and make a new post with UNLOCKED in it. Attach the finalized map and screenshot.
4. You may not make another tile unless 3 (!changed) other people make theirs.
5. The time limit is 5 hours, so that one does not lock the topic if they will not make their part of the map.

Map specific rules:
1. The tiles are uneven size to make things more interesting. You may not claim more than one large(45x45) tile.
2. The map theme is "Industrial", #noDigitalis and #noRunners. I set the terrain textures but feel free to change them if you have a better idea. This might change once someone makes/chooses really cool textures.
3. Don't make too severe unit limits, and if you change the unit limits write it, limiting CN's to 1 is cool but disallowing half of the weapons is less so.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 04, 2014, 01:08:45 PM
UNLOCKED!!!

Added a moving cannon. Shoots automatically at player units. Moves along level 7 terrain like a glider (this is a $var and can be changed per individual tower). Sets its own images automatically. Is damaged by nullifiers normally, and snipe it to disable.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 04, 2014, 03:34:57 PM
UNLOCKED!!!
I have applied the textures, so don't change them now.
Also I'm not sure what's the range of your gun C0? It looked like 50?? I think it's too large, as the gun moves only the units near it should be targeted so I'm in favour changing the range to around 20.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 04, 2014, 05:18:12 PM
Quote from: pawel345 on February 04, 2014, 03:34:57 PM
I have applied the textures, so don't change them now.
Also I'm not sure what's the range of your gun C0? It looked like 50?? I think it's too large, as the gun moves only the units near it should be targeted so I'm in favour changing the range to around 20.
Ah yes - I assumed I did that. Forgot to recompile. I'll lock this topic again and make a new bit as well as fixing that cannon once two more people have modified.
For those who would add more cannons - just place a core and add "net_turret.crpl". They DO NOT have to be on L7 terrain. If so, they'll just stay still but work just the same.
Title: Re: Pass the map 2-Let's make a map together
Post by: Lost in Nowhere on February 04, 2014, 05:31:31 PM
LOCKED!
Also, I could change the gun's range...
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 04, 2014, 05:38:23 PM
Quote from: Lost in Nowhere on February 04, 2014, 05:31:31 PM
LOCKED!
Also, I could change the gun's range...
To 15, if you will! Thank you!
Title: Re: Pass the map 2-Let's make a map together
Post by: Lost in Nowhere on February 04, 2014, 06:02:12 PM
UNLOCKED
-Created a safe landing location
-Set limit for building forges to 0
-Reduced range on C0's gun as requested
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 04, 2014, 06:11:35 PM
UNLOCKED
Look Ma, No CRPL!

Clean0nion: Your big gun is bugged. I shot it with a sniper, and it was then infinitely stuck in Recovery mode. You're setting Timer 0 back to 300 every tick when health is zero, it never counts down to zero. I tried a quick fix, but it didn't work, so I left it unchanged. I might keep looking at it, but I didn't want to keep the map locked up.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 04, 2014, 08:11:09 PM
@CleanOnion,

I added 0 ->recoveryMode to the initial once block, and updated :CheckHealth as listed below, and that seemed to fix it to me. See if that behaves the way you intended. I did NOT change the script in the map being passed around, I leave that to you.
Spoiler

:CheckHealth
   <-recoveryMode if
      GetTimer0 eq0 if
         Self CONST_SNIPERTARGET 1 SetUnitAttribute
         0 ->recoveryMode
         "" SetPopupText
         0 SetPopupTextAlwaysVisible
         Self CONST_HEALTH 60 SetUnitAttribute
      endif
   else
      Self CONST_HEALTH GetUnitAttribute 0 eq if
         Self CONST_SNIPERTARGET 0 SetUnitAttribute
         1 ->recoveryMode
         1 SetPopupTextAlwaysVisible
         "Recovering... " SetPopupText
         300 SetTimer0
      endif
   endif
[close]

Also, your range finder image seems to be missing from the map.
Title: Re: Pass the map 2-Let's make a map together
Post by: Lost in Nowhere on February 04, 2014, 08:42:10 PM
Currently, saving the Forge is impossible as far as I can tell.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 05, 2014, 02:11:15 AM
Set the limit back to 1, so that if player can't save it, they can still rebuild it. That was my original intention as I wasn't sure how the rest of the map will look. I might modify it slightly while playtesting so there is a realistic chance to get it.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 05, 2014, 03:02:28 AM
Quote from: Grayzzur on February 04, 2014, 08:11:09 PM
@CleanOnion,

I added 0 ->recoveryMode to the initial once block, and updated :CheckHealth as listed below, and that seemed to fix it to me. See if that behaves the way you intended. I did NOT change the script in the map being passed around, I leave that to you.
Spoiler

:CheckHealth
   <-recoveryMode if
      GetTimer0 eq0 if
         Self CONST_SNIPERTARGET 1 SetUnitAttribute
         0 ->recoveryMode
         "" SetPopupText
         0 SetPopupTextAlwaysVisible
         Self CONST_HEALTH 60 SetUnitAttribute
      endif
   else
      Self CONST_HEALTH GetUnitAttribute 0 eq if
         Self CONST_SNIPERTARGET 0 SetUnitAttribute
         1 ->recoveryMode
         1 SetPopupTextAlwaysVisible
         "Recovering... " SetPopupText
         300 SetTimer0
      endif
   endif
[close]

Also, your range finder image seems to be missing from the map.
Yeah, that should work perfectly. I'll add a new section and fix both these issues once I can, which should be later today. Thanks for this.
Title: Re: Pass the map 2-Let's make a map together
Post by: Mikoz on February 05, 2014, 11:41:15 AM
Unlocked!
Drill rider will make more rails. It won't ride into space or to higher ground. Also avoids player's units and walls.
It can be deactivated in CRPL core properties(for easier editing).
If it is active, please save the map before playing it.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 05, 2014, 12:08:29 PM
That is positively evil. :)
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 05, 2014, 03:39:48 PM
UNLOCKED!!!
Added a new tile
Added a new, separate track
Added a regular turret to new track
Added a smaller, faster turret to larger track
Modified (mostly unintentionally) a few cells of the chunk beneath me - this was mostly graphical edits. Nothing major was affected. My apologies.

I must say that this drill thing is a tad spammy.

Oh, and another thing: WHERE CAN I GET THESE FANCY TERRAIN TEXTURES?
Title: Re: Pass the map 2-Let's make a map together
Post by: Lost in Nowhere on February 05, 2014, 08:21:26 PM
UNLOCKED
Added the middle-bottom large area

I just noticed that it kind of looks like a head...
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 05, 2014, 11:05:44 PM
UNLOCKED

Quote from: Lost in Nowhere on February 04, 2014, 08:42:10 PM
Currently, saving the Forge is impossible as far as I can tell.
I had an idea about that....

Looks like whatever's destroying the floor damaged one of those cannons. This one has an anti-creeper payload, and due to the damaged rails requires energy from the player network to fire. Targeting servo is jammed, and it's pointed at the Forge.

Currently set to request 10 packets to fire, with a payload of 250 shots before it's empty. That and the size of the energy node next to it are negotiable with respect to opening game balance/difficulty. I'll take suggestions and make adjustments during the final edit phase.

Originally I was going to suggest we lock down Terps on this map, but now that the little DrillRider is going crazy, I think some players may need a Terp!
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 06, 2014, 04:10:54 AM
UNLOCKED

I added a dome protecting 4 spore towers. It only takes map space so that you can't build a nullifier. To bring it down you need to take all generators on the map. I added a generator to my previous square. If you could add some generators in other squares as well I would be thankfull. The generator acts like a regular emitter, it just has some nice graphics. You can adjust the amount it produces as well as the delay.
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 06, 2014, 08:08:36 AM
I can take one square if no one fights me for it??
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 06, 2014, 09:08:02 AM
Sure, anyone can :D
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 06, 2014, 09:15:27 AM
Don't forget to post "LOCKED" in big letters while you work.

I'll probably change the emitter in the upper spiral to one of those generators when everyone is done.
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 06, 2014, 10:10:24 AM
LOCKED

Just had to come home from work first :)
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 06, 2014, 11:06:00 AM
Whoever next builds more rail - please! Add some more turrets!
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 06, 2014, 11:13:58 AM
I don't think we want too many turrets. Plus, have you watched that little drill rider unit? There will be rails... lots and lots of rails.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 06, 2014, 11:15:01 AM
Quote from: Grayzzur on February 06, 2014, 11:13:58 AM
I don't think we want too many turrets. Plus, have you watched that little drill rider unit? There will be rails... lots and lots of rails.
Lots of rails but no turrets to use them make for an empty map. And we don't have a great deal of emitters as it is.
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 06, 2014, 12:06:13 PM
UNLOCKED

- Started with the terrain design for my square
- Removed Map Border
- Added Death Star (with a tiny funny detail if you look close)
- Added a spinning Galaxy
- Changed Terrain Texture 5 because I thought the color was to bright on the old one. I think the new one looks better with the rest of the color theme. I`ll revert it if you guys think the old texture looks better.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 06, 2014, 12:11:27 PM
I say it looks cool :D Again I would ask to add some of my "generators" across the map, as with only one the huge structure I made has no purpose.
About the turrets I say a person who will do the two squares that are let make a "factory" for turrets that will make new ones once player kills the old ones. ofc you should be able to kill the factory-similar to a runner nest.
Title: Re: Pass the map 2-Let's make a map together
Post by: JonneeG on February 06, 2014, 12:59:02 PM
UNLOCKED

I added another rail creating thing and a generator.
also added a place where someone could code a turret spawner If someone could actually code the thing, that would be great,
added a generator,
limited terps and berthas to ~6
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 06, 2014, 01:53:17 PM
Ok there is was a problem with C0 turret script making them invincible. I fixed it and also made them not leave a PZ. As we might want to have some more turrets I propose we add a turret factory to the map. I would place it under the dome for some protection, it will make new small turrets so that there will be 5 on the map, something like in V's Aether map. What do you guys think? I attach the fixed turret script and the proposed turret factory script below.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 06, 2014, 02:01:52 PM
Quote from: pawel345 on February 06, 2014, 01:53:17 PM
Ok there is was a problem with C0 turret script making them invincible. I fixed it and also made them not leave a PZ.
Alright. That seems to be fine. Your solution is a tad messy, but I'll leave it there nonetheless.
However - I didn't like the thing where you change the redness based on health. It was horrible. Steppy and blocky. Like income taxes, but in for image redness.

So, I improved that and commented what you put there in the @CheckHealth function!
What I commented
#   Self CONST_HEALTH GetUnitAttribute 10000 eq if
#   Self "main" 255 255 255 255 SetImageColor
#   endif
#   Self CONST_HEALTH GetUnitAttribute 10000 lt if
#   Self "main" 255 200 100 255 SetImageColor
#   endif
#   Self CONST_HEALTH GetUnitAttribute 9961 lt if
#   Self "main" 255 100 100 255 SetImageColor
#   endif
#   Self CONST_HEALTH GetUnitAttribute 9941 lt if
#   Self "main" 255 0 0 255 SetImageColor
#   endif
[close]
What I added
Self "main" 255 Self CONST_HEALTH GetUnitAttribute 9940 sub 60 div 255 mul dup 255 SetImageColor
[close]
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 06, 2014, 02:19:38 PM
Your script :D so you get to change it as you like :P I did it like that so that there is a clear indication if the gun was hit once twice or trice as the hp bar had to be removed.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 06, 2014, 02:37:30 PM
Quote from: pawel345 on February 06, 2014, 02:19:38 PM
Your script :D so you get to change it as you like :P I did it like that so that there is a clear indication if the gun was hit once twice or trice as the hp bar had to be removed.
Now your solution actually makes a lot of sense!
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 06, 2014, 02:56:05 PM
LOCKED
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 06, 2014, 04:16:55 PM
UNBLOCKED

- Added Opening Logo with sound
- Added a Generator
- Added a "AC tank" that you can blow up to get some "free" AC
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 06, 2014, 04:19:02 PM
UNLOCKED

Fixed the terrain that was changed by someone else in my section (Be Careful!). Changed my emitter to a generator.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 06, 2014, 04:58:02 PM
Unlocked.
Added a construction facility. Takes two nullifiers to destroy.
Also added opening text.
I moved a turret near the forge. Remove at will.
Title: Re: Pass the map 2-Let's make a map together
Post by: Warpsing on February 06, 2014, 10:55:26 PM
unlocking.

(http://i.imgur.com/hnNRu56.jpg)

It's finally done. what is that red thing? a runner.

also, there is allready a rain of creeper along with turned generators(i saved AFTER i did the thing.), so to compensate, i allowed the forge to be remade for twice the normal cost.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 06, 2014, 11:32:01 PM
Quote from: Cavemaniac on February 06, 2014, 11:21:45 PM
What?

http://www.youtube.com/watch?v=cTFt2yV-WB0 (http://www.youtube.com/watch?v=cTFt2yV-WB0)
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 07, 2014, 01:57:34 AM
OK so I must say WUT HAPPEND? The map seems completely unplayable, at least according to me. Random creeper rain from the beginning, random spores flying around, I have no idea what is happening.  I think that random guppy really destroys the map. The spores are not all that bad, they could stay, but the creeper rain is a bad idea. What do other think?
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 07, 2014, 02:37:59 AM
My concerns:

Looks like it was allowed to run for a bit and then saved, so everything's no longer in the starting location. Some of the walls are already damaged, including the ones containing the emitter by the starting location. Those Drill Riders are vicious enough without giving them a head start! (Plus MadMag's startup logo doesn't come down anymore.) -- To fix all this, it'll probably be easier to revert to the previous map and re-apply the new grid's changes.

The creeper rain falls on the forge and destroys it before those walls even come down.

There are WHITE spores that deliver regular creeper?

And that freakin' guppy... 750 health, 0.5 heal rate, counts for victory? You can't kill it. I can barely see the health bar move with a PZ Sniper nailing it. As soon as it gets away from you, it's healed. Am I missing something on this thing?

I also think there are too many turrets coming out of that factory too quickly.

It's late. I'll talk to y'all in the morning.
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 07, 2014, 02:43:12 AM
I also think it is best to load up a previous savegame and start from there again.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 07, 2014, 03:06:54 AM
Here's what I'd do if I had the time.
Load up Warpsing's save. Extract any new scripts and images.
Go back to the next save. That should be my save. If it's still broken there, go back to the save before that. That shouldn't be broken.
Then just redo the edits.

As for the turrets factory, it produces a turret every 300 frames up to a maximum of 11 turrets on the map where the variable "name" is "Gun1", which is the default. Both of those numbers are $vars.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 07, 2014, 03:27:24 AM
OK then the map is LOCKED for Warpsing to fix it and reupload his square. I attach the latest "good" version that is C0 version.



As for other stuff, I think that 11 turrets is a bit much. Let's make it something like 8 maybe? It will be enough to make it hard for the player but they will not be everywhere.

Also as this map is nearing completion we can start thinking about a Pass the Map 3 theme. I through about making it an island sort of map like 3P Hawaii? I would make the map 150x150 but the 30 squares around would be creeper ocean, around 3~4 deep, with a "wave" programmed to come after a while making it around 6 deep for some time. What do you guys think?
Title: Re: Pass the map 2-Let's make a map together
Post by: J on February 07, 2014, 03:33:01 AM
Quote from: pawel345 on February 07, 2014, 03:27:24 AM
Also as this map is nearing completion we can start thinking about a Pass the Map 3 theme. I through about making it an island sort of map like 3P Hawaii? I would make the map 150x150 but the 30 squares around would be creeper ocean, around 3~4 deep, with a "wave" programmed to come after a while making it around 6 deep for some time. What do you guys think?
What I think? Try something that doesn't become a massive slog after a few minutes. In other words, hard start, easy win. However, this is nearly impossible when creating it with multiple people.
Title: Re: Pass the map 2-Let's make a map together
Post by: Helper on February 07, 2014, 10:25:01 AM
Something to keep in mind is that only about 25% of those who downloaded your first effort were able to post a score.
This is a great concept (community maps), but too often the end result is a map designed for the better players - and most of our members get left out in the cold.

Some kind of messaging device(s) should also be included for game information. It isn't that big a deal do some saves/re-starts for smaller maps, but can get unwieldy on the larger ones.

Looking forward to playing the end result.
H
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 07, 2014, 10:27:15 AM
Yep.. Something to think over. We must not overfill the map with cool stuff that makes it very hard to beat or understand.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 07, 2014, 10:46:02 AM
Cool stuff is okay. Confusing stuff is not.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 07, 2014, 11:04:47 AM
Here's an idea, then.
All the contributors make the map as normal. CRPL, cores, all the stuff.
Then a moderator - probably pawel - goes through all the things, removes what is detrimental, and changes the vars of things. Not to mention modifying and universal-ising the terrain.
And then that map is uploaded along with a list of what was changed to this topic. If someone doesn't like a change to their contribution, that is changed again so they're happy. And then when everyone is happy, the map gets CS'd.
Title: Re: Pass the map 2-Let's make a map together
Post by: Relli on February 07, 2014, 02:12:39 PM
Quote from: Clean0nion on February 07, 2014, 11:04:47 AM
Here's an idea, then.
All the contributors make the map as normal. CRPL, cores, all the stuff.
Then a moderator - probably pawel - goes through all the things, removes what is detrimental, and changes the vars of things. Not to mention modifying and universal-ising the terrain.
And then that map is uploaded along with a list of what was changed to this topic. If someone doesn't like a change to their contribution, that is changed again so they're happy. And then when everyone is happy, the map gets CS'd.
That's a good plan. Everyone throws in what they want to, and then someone with an eye for game balance goes in and tweaks it until it's just right.
You guys should pick the person who'll play Balancer. Or if there are a lot of people interested, maybe give it to someone new each map.

So how about it? Who would be interested in filling that role?
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 07, 2014, 02:17:20 PM
Grayzzur or Pawel..
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 07, 2014, 02:18:00 PM
Quote from: MadMag on February 07, 2014, 02:17:20 PM
Grayzzur or Pawel..
Agreed. I'd do it but:
1. I take so long to do stuff.
2. I'd forget.
3. I can't handle that commitment!
Title: Re: Pass the map 2-Let's make a map together
Post by: MadMag on February 07, 2014, 02:19:13 PM
QuoteAgreed. I'd do it but:
You are crazy...
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 07, 2014, 05:43:46 PM
I can gladly supervise, as it was me who came up with the idea in the first place, ofc as this is a community effort I only get to do more or less cosmetic changes to improve playability.
Title: Re: Pass the map 2-Let's make a map together
Post by: Warpsing on February 07, 2014, 08:21:30 PM
UNLOCKED.

(http://i.imgur.com/HRYs33x.jpg)

completed the terrain. also, that's a hellrider guppy down there, that has the emitter a bit more resistant, but still vulnerable.

so, it takes ammo and AC, and does nothing with it. it also prevents building within an area. and connects to  structures, also uses spores.  It also acts as a shell for a mobile emitter. also, it is capble if being snipered and beamed, so if you don't have a certain update, the guppy might be unintentionally harder.

also, those red things make terrain upon beaming them... wait, did i make them snipeable?
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 12:40:39 AM
UNLOCKED
Fixed some terrain in my section.
Grammar/spell check on the opening conversation.
Moved an energy node near the damaged turret to a place not as quickly overrun by creeper.

Ok everyone... time to play for difficulty/balance/bugs and see what needs to be polished before releasing to the community.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 01:44:11 AM
My initial feel is that there's too much happening too quickly at the starting location, and random things can overwhelm you quickly. And that's with the turrets all shooting blanks.

C0: Something's wrong with the turrets. They make noise, but they don't even tickle. And once they're fixed, it's going to be a very hard map as-is, in my opinion.

Ok, I get the Hellrider Guppy shooting out spores. That's fine. There are ALSO random spores appearing from random origins. I don't understand those. What's the deal there?

Also, what's the point of the collectors in the void PZ's? And why are there 2 collectors in each PZ?
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 04:09:51 AM
Right, the turrets still have the old script, fixing it now. The random spores come form the "Guppy" as the script says to shoot a spore form random location to it's location. I will comment it out as it will just confuse the player.


Edits to the map:
-Changed the net_turret.crpl with the one I wrote(C0 if you want your fixed script I can place it there but form your comment I understood that you agreed to my original solution).
-Lowered the range of the stationary turret near the forge to 25 form 30.
-Removed the random spores form the Helrider Guppy, it still fires spores but the ones form random locations are removed.
-Removed the PZ collectors and relays in the void. I realize they where placed there so that guppy can eat packets form the network but the player can destroy them with one click so there is no point in them.
-Changed so that you can rebuild the forge for 1000 packets if you don't manage to save it. Also changed the conversation accordingly. It should make things a bit easier while still make the player to rush for the forge if possible.
-Changed the max number of turrets to 6, also made the factory produce smaller turrets, range 12, speed 0.8. 11 turrets would make the game almost unplayable. Also increased the interval to 900.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 06:36:18 AM
Do the turrets still fire blanks? If so, I really have no idea what's going on there. They work on my home save.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 06:57:46 AM
It seems so. I am looking at the script now, I noticed something breaks when they have more than one target in range. Add your working script here. But check if they are firing when there are more than 1 unit in range also if they keep firing after they have destroyed a unit. For me they work, and then suddenly stop working around 30 sec into the game.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 12:55:28 PM
Quote from: pawel345 on February 08, 2014, 06:57:46 AM
It seems so. I am looking at the script now, I noticed something breaks when they have more than one target in range. Add your working script here. But check if they are firing when there are more than 1 unit in range also if they keep firing after they have destroyed a unit. For me they work, and then suddenly stop working around 30 sec into the game.
Loaded a bunch of turrets onto a separate map using a slightly outdated script.
Some fire, some don't. If a turret notices a unit, it fires successfully. But it doesn't always notice the unit.
This feature seems to be randomly distributed amongst turrets moving and stationary. I'm working on this.


UPDATE: If a turret has been firing at a unit and a closer unit appears, it stops. That's the error. Trying to find a solution.

UPDATE: I'm seeing no issues with the script. Ugh.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 12:57:36 PM
Try working on it on the Pass the map, as I managed to make it work on a test map but it breaks once copied to here.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 01:05:46 PM
Quote from: pawel345 on February 08, 2014, 12:57:36 PM
Try working on it on the Pass the map, as I managed to make it work on a test map but it breaks once copied to here.
The map that it's being tested on won't matter. If it doesn't work, it doesn't work.

UPDATE: Found a part of the script that makes no sense in the :GetClosestUnit function.

UPDATE: FIIIIIIIIIIIIXXXEEEEDDD!!!!!! Uploading now!

UPDATE: Merging with most recent script version...
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 01:13:10 PM
If I bump the energy resource node near the damaged turret up from 50 to 150-200, then I have an easier time establishing a base and being able to save the forge. I recommend we make that change. You still have to go for it fairly quickly, or it's position gets overrun with creeper.

The turret factory seems to only be making small turrets.

I beat the map and didn't get a victory. Not sure if it's me, or if there's something hiding that counts for victory.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 01:19:58 PM
Script is here.
Spoiler

# net_turret.crpl
# Created by VirgilW
# Modified by Clean0nion
# ------------------------------------------

#THIS IS PTM

$name:"Gun1"
#$barrelOffset:60
#$barrelRecoil:60
$barrelRecoilRate:0.5
#$barrelRecoilTime:330
$maxRotationSpeed:0.05
$fireDelay:60
$range:15
$payload:30
$scale:1.5
$MIN_TERRAIN_HEIGHT:7
$MAX_TERRAIN_HEIGHT:7
$SPEED:0.5

once
   Self CONST_DESTROYONDAMAGE 0 SetUnitAttribute
   Self CONST_SNIPERTARGET 1 SetUnitAttribute
   Self CONST_NULLIFIERDAMAGEAMT 10000 SetUnitAttribute
   Self CONST_MAXHEALTH 10000 SetUnitAttribute
   Self CONST_HEALTH 10000 SetUnitAttribute
   Self CONST_HEALRATE 0 SetUnitAttribute
   Self CONST_SNIPERIGNORELOS 1 SetUnitAttribute
   Self CONST_DESTROYONDAMAGE 1 SetUnitAttribute
   Self CONST_SHOWHEALTHBAR 0 SetUnitAttribute
   Self CONST_CREATEPZ 0 SetUnitAttribute
      
   15 <-scale mul ->barrelOffset
   15 <-scale mul ->barrelRecoil
   Self "main" "Custom0" SetImage
   self "barrel" "Custom1" SetImage
   self "circleImg" "Custom0_256pp" SetImage
   Self "main" <-scale <-scale SetImageScale
   Self "barrel" <-scale <-scale SetImageScale
   0 ->targetX
   0 ->targetY
   -1 ->lastCellX
   -1 ->lastCellY
   
   self "barrel" 0 SetImageRotation
   self "barrel" 0 0 -0.01 SetImagePosition
   Self "circleImg" 0 0 0 256 SetImageColor
   Self "circleImg" <-range Mul(2.0) Add(1) Div(3) Dup SetImageScale
   
   <-barrelOffset ->currentBarrelOffset
   1 ->recovery
endonce

@CheckHealth
@ShowRangeFinder

GetTimer0 eq0 if
@GetClosestUnit ->closestUnit

<-closestUnit neq0 if
   <-closestUnit CONST_COORDX GetUnitAttribute ->targetX
   <-closestUnit CONST_COORDY GetUnitAttribute ->targetY
else
   -1 ->targetX -1 ->targetY
   GetQueuedMoveCount eq0 if
      @ChooseNewCell if
         <-chosenX <-chosenY <-SPEED QueueMove
         CurrentX ->lastCellX
         CurrentY ->lastCellY
      endif
   endif
endif

@ManageBarrel ->onTarget
@HandleRecoil

<-onTarget if
   GetTimer0 eq0 if
      PlaySound("Weapons20")
      @CreateBullet
      <-currentBarrelOffset <-barrelRecoil sub ->currentBarrelOffset
      <-currentBarrelOffset 0 lt if 0 ->currentBarrelOffset endif
      <-fireDelay SetTimer0
   endif
else

endif
endif

:CreateBullet
   "CRPLCore" CurrentX CurrentY CreateUnit ->unit
   <-unit "net_turret_bullet.crpl" AddScriptToUnit
   <-unit "net_turret_bullet.crpl" "targetX" <-targetX SetScriptVar
   <-unit "net_turret_bullet.crpl" "targetY" <-targetY SetScriptVar
   <-unit "net_turret_bullet.crpl" "payload" <-payload SetScriptVar
   <-unit "main" "Custom2" SetImage
   <-unit "main" <-scale <-scale SetImageScale
   <-unit "main" -0.01 SetImagePositionZ
   <-unit "main" self "barrel" GetImageRotation SetImageRotation

:GetClosestUnit
   99999999 ->closestDistance
   0 ->closestUnit
   GetUnitsInRange(CurrentCoords <-range) ->unitCount
   do (<-unitCount 0)
      ->unit
      CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute Distance ->d
      <-d <-closestDistance lt
      #CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute
      if
         GetUnitType(<-unit) ->ut
         <-ut "POWERZONE" eq <-ut "TECHARTIFACT" eq or <-ut "MESSAGEARTIFACT" eq or <-ut "SHIELDKEY" eq or <-ut "TOTEM" eq or <-ut "OREDEPOSIT" eq or <-ut "RESOURCEPACK" eq or <-ut "BERTHA" eq or not if
            <-d ->closestDistance
            <-unit ->closestUnit
         endif   
      endif
   loop
   <-closestUnit

:ManageBarrel
   <-targetX -1 eq <-onTarget 1 eq or if
      0
      return
   endif

   <-targetX CurrentX sub ->deltaX
   CurrentY <-targetY sub ->deltaY
   <-deltaY <-deltaX atan2 ->desiredAngle
   
   self "barrel" GetImageRotation <-desiredAngle ShortestAngle ->rot
   
   <-rot <-maxRotationSpeed gt if
      <-maxRotationSpeed ->rot
   else
      <-rot <-maxRotationSpeed -1 mul lt if
         <-maxRotationSpeed -1 mul ->rot
      endif
   endif
   
   <-rot abs 0.0001 lt if
      1 ->onTarget
   else
      0 ->onTarget
   endif
   
   self "barrel" GetImageRotation <-rot 0.2 mul add ->rot
   self "barrel" <-rot SetImageRotation
   self "main" <-rot SetImageRotation

   <-onTarget

:HandleRecoil
   <-currentBarrelOffset <-barrelOffset lt if
      <-currentBarrelOffset <-barrelRecoilRate add ->currentBarrelOffset
      <-currentBarrelOffset <-barrelOffset gt if <-barrelOffset ->currentBarrelOffset endif
   endif
   
   self "barrel" GetImageRotation ->rot
   
   <-rot cos <-currentBarrelOffset mul ->barrelX
   <-rot sin <-currentBarrelOffset mul ->barrelY
   
   self "barrel" <-barrelX <-barrelY -0.01 SetImagePosition
   
:CheckHealth
   Self "main" 255 Self CONST_HEALTH GetUnitAttribute 9940 sub 60 div 255 mul dup 255 SetImageColor
   Self CONST_HEALTH GetUnitAttribute 9940 lte if
      Self CONST_SNIPERTARGET 0 SetUnitAttribute
      1 SetPopupTextAlwaysVisible
      "Recovering... " SetPopupText
      <-recovery if
         300 SetTimer0
         0 ->recovery
      endif
      GetTimer0 eq0 if
         "" SetPopupText
         0 SetPopupTextAlwaysVisible
         Self CONST_HEALTH 10000 SetUnitAttribute
         1 ->recovery
      endif
   else
      Self CONST_SNIPERTARGET 1 SetUnitAttribute
      Self CONST_SNIPERIGNORELOS 1 SetUnitAttribute
   endif
   
:ChooseNewCell
   -1 ->chosenX
   -1 ->chosenY
   @GetPossibleCells
   0 <-count RandInt ->randCellNumber
   <-count 0 do
      ->y
      ->x
      I <-randCellNumber eq if
         <-x ->chosenX
         <-y ->chosenY
      endif
   loop
   <-chosenX -1 neq


:GetPossibleCells
   0 ->count
   CurrentX 1 add ->cx CurrentY ->cy @CheckCell      #Right
   CurrentX ->cx CurrentY 1 sub ->cy @CheckCell      #Up
   CurrentX 1 sub ->cx CurrentY ->cy @CheckCell      #Left
   CurrentX ->cx CurrentY 1 add ->cy @CheckCell      #Down
   <-count eq0 if
      <-lastCellX
      <-lastCellY
      1 ->count
   endif


:CheckCell
   <-cx <-lastCellX neq <-cy <-lastCellY neq or if
      <-cx <-cy GetTerrain ->terrainHeight
      <-terrainHeight <-MIN_TERRAIN_HEIGHT gte <-terrainHeight <-MAX_TERRAIN_HEIGHT lte and if
         <-cx
         <-cy
         <-count 1 add ->count
      endif
   endif
   
:ShowRangefinder
   if (Distance(GetMouseCell CurrentCoords) lte(3.5))
      SetImageColor(Self "circleImg" 0 0 0 85)
   else
      SetImageColor(Self "circleImg" 0 0 0 0)      
   endif
[close]
The only things that might need changing are the image names - I've already gone over all the variables.

@Grayzzur - MadMag's Death Star?
Also not sure what happens to the giant shield when you take down the generators, but if it doesn't destroy itself that could be it.

UPDATE: Just updated that spoiler.
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 01:23:37 PM
I modified the factory so that it makes small turrets.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 01:31:48 PM
I checked MadMag's Death Star and galaxy spinnner, both don't count. The shield gets destroyed. There are two other image cores on the map that also don't count for victory. Maybe it wigged out because I was playing through the editor.

Ok, if small turrets were intentional, we're good. I thought it was going to be random.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 01:51:03 PM
No idea was causing to map to fail winning, but the turrets completely work in this save.
It was the Hellrider that was breaking it.
Suffice to say that shields no longer protect you from turrets. The Hellrider has not been modified.

Another thing: the opening text is messy, not serious enough, does not follow the chat theme of other game levels, and is full of grammatical errors, and also focuses far too heavily on the Guppy.

One more thing: there are two areas where it would be EASIER to begin than the starting zone, even after three or four minutes into the game. These are between the shield and the AC tank, and beneath the spawn next to the guppy.
Title: Re: Pass the map 2-Let's make a map together
Post by: Warpsing on February 08, 2014, 04:38:10 PM
A small adjustment i made, should help with the text, also put a message artifact not too far from the hellrider.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 04:47:25 PM
UNLOCKED

Ok.

* Re-un-commented spore from random location to guppy - this snuck back in, it's confusing. The guppy has an emitter anyway.
* Fixed the targeting issue with the turrets. They now properly target the closest player unit, regardless of how many units are in range.
* Increased energy node by damaged turret to 100.
* Hellrider Guppy (per chat discussion) moves at 0.5, heals at 0.2, has 250 health.
* Spelling/grammar adjustments to the new message artifact.
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 05:25:36 PM
If you'd care to say what the problem was, too, I'd be much obliged.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 06:07:41 PM
Quote from: Clean0nion on February 08, 2014, 05:25:36 PM
If you'd care to say what the problem was, too, I'd be much obliged.

Recoil issue: I think I commented out a couple variables by accident when helping with one of the earlier bugs. Putting those back fixed this.

Targeting issue: It was in the :GetClosestUnit function. There were some extra commands causing an IF to evaluate incorrectly, and also left numbers on the stack to be picked up as the unit id on the next loop. This would basically cause it to "lock on" to an invalid unit id and hang.
Spoiler

:GetClosestUnit
   99999999 ->closestDistance
   0 ->closestUnit
   GetUnitsInRange(CurrentCoords <-range)  ->unitCount
   do (<-unitCount 0)
      ->unit
      CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute Distance ->d
      <-d <-closestDistance lt CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute if
         GetUnitType(<-unit) ->ut
         <-ut "POWERZONE" eq <-ut "TECHARTIFACT" eq or <-ut "MESSAGEARTIFACT" eq or <-ut "SHIELDKEY" eq or <-ut "TOTEM" eq or <-ut "OREDEPOSIT" eq or <-ut "RESOURCEPACK" eq or <-ut "BERTHA" eq or not if
            <-d ->closestDistance
            <-unit ->closestUnit
         endif   
      endif
   loop
   <-closestUnit
[close]
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 06:08:45 PM
Ok then the first person to clear it may upload it with the following description:

A map made together by several knucklekracker forum members. Clean0nion, JonneeG, Lost in Nowhere, pawel345, Mikoz, Grayzzur, MadMag and Warpsing. Hope you enjoy. The pass the map game can be found on the forums in custom map discussion, if you want to make a part of the next map you are welcome. #PassTheMap #noDigitalis #Spores #CRPL #noRunners #Void
   
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 08, 2014, 06:22:40 PM
Quote from: Grayzzur on February 08, 2014, 06:07:41 PM
Quote from: Clean0nion on February 08, 2014, 05:25:36 PM
If you'd care to say what the problem was, too, I'd be much obliged.

Recoil issue: I think I commented out a couple variables by accident when helping with one of the earlier bugs. Putting those back fixed this.

Targeting issue: It was in the :GetClosestUnit function. There were some extra commands causing an IF to evaluate incorrectly, and also left numbers on the stack to be picked up as the unit id on the next loop. This would basically cause it to "lock on" to an invalid unit id and hang.
Spoiler

:GetClosestUnit
   99999999 ->closestDistance
   0 ->closestUnit
   GetUnitsInRange(CurrentCoords <-range)  ->unitCount
   do (<-unitCount 0)
      ->unit
      CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute Distance ->d
      <-d <-closestDistance lt CurrentCoords <-unit CONST_COORDX GetUnitAttribute <-unit CONST_COORDY GetUnitAttribute if
         GetUnitType(<-unit) ->ut
         <-ut "POWERZONE" eq <-ut "TECHARTIFACT" eq or <-ut "MESSAGEARTIFACT" eq or <-ut "SHIELDKEY" eq or <-ut "TOTEM" eq or <-ut "OREDEPOSIT" eq or <-ut "RESOURCEPACK" eq or <-ut "BERTHA" eq or not if
            <-d ->closestDistance
            <-unit ->closestUnit
         endif   
      endif
   loop
   <-closestUnit
[close]
That's the same bit I removed in my updated script - look upwards a couple of posts in this topic. As for the variables: what were they?
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 08, 2014, 06:26:01 PM
Another version here I really hope it works now
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 06:40:05 PM
Fixed the bent rail.

EDIT: This time with both attachments.
Title: Re: Pass the map 2-Let's make a map together
Post by: Grayzzur on February 08, 2014, 09:50:29 PM
*phew*

It's out there. #212
Title: Re: Pass the map 2-Let's make a map together
Post by: TLMike on February 08, 2014, 10:41:14 PM
So, is this the part where you guys start spitballing themes and features of the next in the series? Or have the problems you guys were having with this one burned you all out for today?
Title: Re: Pass the map 2-Let's make a map together
Post by: pawel345 on February 09, 2014, 03:41:07 AM
Well I have a good idea abut the theme for the next map. My idea is to make it an island type of map, like 3P Hawaii, so the beginning will have an ocean of creeper 3~4 deep. What do you guys think? 
Title: Re: Pass the map 2-Let's make a map together
Post by: Clean0nion on February 09, 2014, 06:45:32 AM
Here's an idea.
That.
But all of the edit squares - or most of them, at least - are separated. Islands!