An issue I've noticed lately is that maps made with SCMDraft will often have creep persist on non-zerg buildings (especially resources) even after the generator has been destroyed. It's probably an old issue but here's some observations from tests I've done.
If the non-zerg structure on creep (minerals, p or t buildings) is destroyed before the creep generator, the creep will recede normally. Otherwise, the creep will remain underneath the non-zerg structure until it is destroyed. This only happens sometimes with non-resource buildings, but always happens with resources.
I believe this occurs because SCMDraft stacks buildings on top of creep instead of overriding creep, which seems to be what happens in StarEdit. Any thoughts on how to fix this? I don't want to have to use the create unit trigger or w/e else to skip this, and especially cannot do this if I have some creep generators placed illegally.
Image of it occurring on minerals:
Unless I have a bug, creep isn't stored in the saved map - ScmDraft just displays what it would look like in-game and when a game starts StarCraft generates the creep for each building.
So it's a bug with SC's engine regarding illegally-placed buildings? Is there a way for SCMD to 'remove' creep from underneath structures similar to how it would occur in game if a creep generator were created next to a building?
*sluuuuuuuuuuuuuuuuuurp!* Melee Map Maker
What exactly do you mean by "illegally-placed"? Off-grid? Stacked? On top of other buildings? On unbuildable or unpassable ground?
Could this maybe just have to do with unit order, whether the creep generator or the other building is created first?
None.
Make sure the minerals have normal terrain under them, and not e.g. high dirt instead of low dirt. That should not matter but who knows. Or is this your mode and you marked your minerals as requiring creep? (And are they placed for neutral?)
Placing minerals on creep is illegal. The editor should remove the creep below the minerals when they are placed, which appears to be what staredit does. I'll upload the test map when I get home.
edit: here are the maps.
Made in StarEdit:
linkMade in SCMDraft:
link
Post has been edited 1 time(s), last time on Nov 27 2017, 11:03 pm by Pr0nogo.
Host the map somewhere where I don't have to try to figure out which of the 10 download links is the real one.
Also, have you tried opening the staredit made map in scmdraft and vice versa and comparing the results?
SCMDraft mapStarEdit mapYou can recreate the effect by just placing a creep generator and then placing minerals on the creep, and killing the creep generator in game. Doesn't occur if you do the same thing in StarEdit. I've also tested it with the `place buildings anywhere` option ticked and unticked, with no change.
Image from the StarEdit map:
If I delete and undo delete the creep colonies in ScmDraft, save the map, and run the game the creep despawns normally. If I then change the unit order and move the creep colony to the start of the list it no longer despawns.
So in conclusion, whether the creep despawns depends on whether the building after the creep spawner or before.
Interesting. This workaround could do the trick, then. Delete all creep generators and undo the deletion to avoid the issues. Thanks, if I run into further problems I'll let you know.
I need to run some tests to see if staredit automatically puts them at the end of the list.
Setting a unit's coordinates to a value outside of the map bounds will cause SCMDraft to freeze. Idk if it's easy to check map bounds and force the unit coordinates to values within range of legal coordinates.
So it isn't impossible - I have managed to add access to two classes from python. However right now that broke keyboard shortcuts among other things, and there are still quite a large number of things that need to be done to get from here to full scripting of the maps. Its not really something that anyone can help with since various subsystems need to be modified / redesigned.
Awesome, glad it's possible. I sent you a PM. I don't know your life, how much time do you even have to dedicate to scm draft?
None.
Setting a unit's coordinates to a value outside of the map bounds will cause SCMDraft to freeze. Idk if it's easy to check map bounds and force the unit coordinates to values within range of legal coordinates.
I don't know if there is any valid reason to do that. I think starcraft deletes out of bounds units on map load. However I will just fix the freeze - my assumption is that the code to determine the portion of the sprite that has to be redrawn locks up if its entirely outside the map bounds.
So it isn't impossible - I have managed to add access to two classes from python. However right now that broke keyboard shortcuts among other things, and there are still quite a large number of things that need to be done to get from here to full scripting of the maps. Its not really something that anyone can help with since various subsystems need to be modified / redesigned.
Awesome, glad it's possible. I sent you a PM. I don't know your life, how much time do you even have to dedicate to scm draft?
Varies depending on friends / weather / workload. Some weeks I only spend an hour or two on it, others 15+
Keep the mineral creep please. It's useful for perma creep without resorting to triggers.
None.
Keep the mineral creep please. It's useful for perma creep without resorting to triggers.
I won't remove it. There may be some way to make it an "opt-in" feature but since its part of the SC engine, place 1000 1HP unit sprite buildings and see if that creates perma creep. Or real buildings and remove em with triggers.
E: Added new build with a quick+dirty fix for the freeze. It needs a better fix long term though. I started designing a new iscript -> image state system a few weeks ago but haven't found time to implement it and need that for the proper fix.
New build also has tab navigation working in the various palettes as a proof of concept. Next I want to extend that to the main scmdraft window and move MDI + normal accelerator handling into a similar hook based mechanism.
Post has been edited 2 time(s), last time on Nov 30 2017, 12:41 am by Suicidal Insanity.
Setting a unit's coordinates to a value outside of the map bounds will cause SCMDraft to freeze. Idk if it's easy to check map bounds and force the unit coordinates to values within range of legal coordinates.
I don't know if there is any valid reason to do that. I think starcraft deletes out of bounds units on map load. However I will just fix the freeze - my assumption is that the code to determine the portion of the sprite that has to be redrawn locks up if its entirely outside the map bounds.
iirc out of bounds buildings crash, but I'm not sure about other units.
TinyMap2 - Latest in map compression! ( 7/09/14 - New build! )
EUD Action Enabler - Lightweight EUD/EPD support! (ChaosLauncher/MPQDraft support!)
EUDDB -
topic - Help out by adding your EUDs! Or Submit reference files in the References tab!
MapSketch - New image->map generator!
EUDTrig -
topic - Quickly and easily convert offsets to EUDs! (extended players supported)
SC2 Map Texture Mask Importer/Exporter - Edit texture placement in an image editor!
This page has been viewed [img]http://farty1billion.dyndns.org/Clicky.php?img.gif[/img] times!
New version up with one tiny bugfix, but the splashscreen has been rearranged slightly, MPQ verification is done earlier, and lots of internal changes to prepare for scripting access. Let me know if what you think about the profile select changes and if anything is broken.
New example script to convert a map to a sandbox mode where units and upgrades are free and build times are fast. The future of mapping has arrived.
from comtypes.gen.ScmDraft2AutomationLib import *
#for all upgrades (we still need to figure out which number is associated with which upgrade)
for i in range(0,62):
upgradeSettings.BaseCost[i,SCMDRAFT2_UPGADECOST_TIME] = 0
upgradeSettings.BaseCost[i,SCMDRAFT2_UPGADECOST_MINERALS] = 0
upgradeSettings.BaseCost[i,SCMDRAFT2_UPGADECOST_VESPENE] = 0
upgradeSettings.IncrementalCost[i,SCMDRAFT2_UPGADECOST_TIME] = 0
upgradeSettings.IncrementalCost[i,SCMDRAFT2_UPGADECOST_MINERALS] = 0
upgradeSettings.IncrementalCost[i,SCMDRAFT2_UPGADECOST_VESPENE] = 0
#for all units (we still need to figure out which number is associated with which unit)
for i in range (0,228):
unitSettings.BuildTime[i] = 5
unitSettings.MineralCost[i] = 0
SI confirmed magical wizard btw
None.
Good work! Now all we need to do is automate a terraining bot
Can we get a hotkey to toggle the 'show defaults' option? Additionally, is there any way to save the height of the output terminal between sessions? I don't like it taking up as much screenspace as it does normally and want to shrink it down, but it resets every time I relaunch the editor.