Staredit Network > Forums > Modding Assistance > Topic: Final Stretch
Final Stretch
Feb 17 2015, 9:42 pm
By: SCRuler
Pages: < 1 « 2 3 4 5 >
 

Mar 2 2015, 7:53 pm Sand Wraith Post #61

she/her

http://www.broodwarai.com/forums/viewtopic.php?f=6&t=1054#p12392 Here is the latest version of PyMS, which has actually been updated recently!. It provides a tool, PyAI, to help with AI modding. Hopefully it's not broken.

http://broodwarai.com/wiki/index.php?title=Main_Page Here is the wiki for BWAI. There seem to be some tutorials for AI modding. Hope these help. I cannot help since I have no AI editing experience.




Mar 2 2015, 8:02 pm SCRuler Post #62



You know what, given how minor the AI thing is, and given that I'm going to be setting up the bases in the maps anyway, I might just ignore the whole AI thing.
In any case, Sand Wraith, did you find anything useful in dealing with energy transfer?



None.

Mar 2 2015, 10:48 pm Sand Wraith Post #63

she/her

No. It ultimately comes down to how interface behaviour is attached to orders.dat which is also attached to tech, weapons, and animation.

That is to say, I can set up the game give a unit a custom button, that links to a tech like UnknownTech33 (tech id 33), used by the Warpin order (order id 174), has a weapon to provide targeting restrictions (id 117), and in-game the button appears. However, when clicked, the button will not present a unit-target interface like any other unit-target spells (e.g. Feedback, Parasite), nor will it even invoke the animation specified in order 174, thus making it impossible to test if my energy-transfer code works correctly (which it should since it's simple).

There are many work-arounds, some more complicated than others, some which have side effects. However, if you want a nice interface that looks and acts like a normal, unit-targeting interface like Parasite or Feedback, you're out of luck.

EDIT: If, say, there was a way to specify behaviour for invoking a particular button, then making custom spells without having to use work-arounds or salvaging existing spells would be much easier. To my knowledge, there is not.




Mar 2 2015, 10:55 pm SCRuler Post #64



I see. SO would it be best to apply energy transfer to, say, Defensive Matrix, along with its stock benefits?



None.

Mar 2 2015, 11:15 pm Sand Wraith Post #65

she/her

Something like that. I can't simply "make it happen" at this point, which is a large part of why I dislike modding SCBW, and that at this point, my time would be better spent learning to use an actually flexible tool. Plugins still haven't been particularly explored (at least in the modding community here at SEN), which remains one of my only motivations to do modding myself.

That said, it's still marginally enjoyable to find work-arounds. Here are some ideas:

1) You can offer up a unit's ability to attack as sacrifice. That is, ordering the unit to attack another unit will cause the energy transfer. The attacker can require energy to attack, lose energy upon firing, and then transfer energy once the bullet lands. I could also further contextualize the behaviour by adding that this would only work when attacking a player-owned unit.

2) Salvage another spell. For example, take Parasite. I could detect whenever a unit is hit by Parasite and then give the unit 50 energy. The original effect of Parasite can stay if you still want it, or, I can remove the Parasite effect, so that the unit is ultimately given 50 energy and no extra status-effect. (Defensive Matrix works here too. I could attach this effect to other abilities as well.)

3) I could give an entire unit-type the ability to persistently give nearby units extra energy, like an aura of energy regeneration.




Mar 2 2015, 11:27 pm SCRuler Post #66



Yeah, see at this rate the energy transfer is most useful with Defensive matrix, since the Terrans need some sort of energy-restoration effect.
Although I would be interested in the energy regeneration aura thing attached to the Science Vessel. Would it be too much trouble to provide a sample of each of those two to see which I like better?



None.

Mar 2 2015, 11:43 pm Sand Wraith Post #67

she/her

What I can do is this: Tell me what plugins so far you intend to use (e.g. only the Ensnare one, or it plus the Broodling one, and so on) so far. I'll make a plugin specifically for you and continue to build on it if you need more things, and, my circumstances permitting, I can provide further updates to your plugin. I am suggesting this because I don't know how to provide you multiple plugins that won't end up conflicting with each other, especially when they will likely modify the same portions of code and result in a conflict.




Mar 2 2015, 11:50 pm SCRuler Post #68



Ah, that's more fair to you. You're right. I intend on staying using the ensnare plugin, and I dont think I'll use the broodling one. So yeah, Ensnare and the energy transmission one. I think this should be the last real issue aside from the zerg capital ship. I gotta find a way to fix that one.



None.

Mar 3 2015, 11:09 pm Sand Wraith Post #69

she/her

I have attached the updated plugin for you. Please replace your old one.

Quote
SCRulerMod plugin

2015/02/27

StarCraft Brood War 1.16.1 MPQDraft plugin. Tested with Firegraft.

Ensnare will now heal the amount specified in its weapons.dat entry over
the course of 75 ticks, 8 frames per tick. That is, 600 frames, which is
25 seconds on Fastest game time.

Science Vessels (and the Hero version) now cause nearby units that have
energy to regenerate energy faster (from 8/256 energy per frame up to
12/256 energy per frame).

Units with Defensive Matrix regenerate energy faster (86/256 energy per
8 frames). This about 56.4 energy recovered over the total course of 56
seconds. If the Defensive Matrix ends before then, so does the
regeneration.

The relevant source code pertaining to General Plugin Template Project
v2.41 has been attached. The plugin itself has been attached.

Additionally, a test binary has been attached. Normally, Ensnare's
damage in weapons.dat is listed as 0. It has now been listed as 300.
This can be confirmed by Plaguing a 400 HP Ultralisk, waiting for the
Plague to run its course, then applying Ensnare. The Ultralisk will
start with 400 HP, be reduced to 100 HP by Plague, and then healed up to
400 HP by Ensnare.


Attachments:
SCRulerMod_Plugin.zip
Hits: 2 Size: 386.3kb




Mar 3 2015, 11:22 pm SCRuler Post #70



Much appreciated! Thank you SW.



None.

Mar 4 2015, 9:29 am O)FaRTy1billion[MM] Post #71

👻 👾 👽 💪

Quote from SCRuler
I suppose so. I haven't changed much. Only thing is At the end of the "Built" item, I had to place an order or something so I addded Local00 I think. I'll post what I have.
At the end of Overmind_withShell_Built it jumps to Overmind_withShell_Init ... I think you want it to jump to Overmind_withShell_GndAttkToIdle. You might also want to replace all references of Overmind_withShell_Local00 with Overmind_withShell_GndAttkToIdle, otherwise certain things would cause it's to 'freeze' anyway. ... Why it's not working as the unit, though, I can't say.



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!
\:farty\: This page has been viewed [img]http://farty1billion.dyndns.org/Clicky.php?img.gif[/img] times!

Mar 4 2015, 12:18 pm SCRuler Post #72



Thanks, that might help. Also, It's kind of set to "building" because it wasn't constructing right.



None.

Mar 4 2015, 2:44 pm SCRuler Post #73



Ok, so I changed the values you suggested I did, and I switched the relevant things for the unit from "building" to "normal unit" and it freezes.
So I copypasted the entry over Kulkulza, set it as a normal unit, made it buildable from the overmind coccoon, set the exe edit, and tried it out. It froze.
I might try out changing the file name to a critter but I'm not sure. I would like you guys to examine one last time before I revamp the unit.

Post has been edited 1 time(s), last time on Mar 4 2015, 5:57 pm by SCRuler.



None.

Mar 4 2015, 10:23 pm Sand Wraith Post #74

she/her

Would you mind reminding me what it is exactly what you are trying to do with your Overmind, gameplay-wise, and how it relates to other units?

Is it supposed to be a building that a Drone can morph into, move around, attack other units, and train Kukulza?




Mar 4 2015, 10:43 pm SCRuler Post #75



Ok, what I want to do now since I abandoned my original plans is to make the overmind cocoon as a regular zerg building that can train Kukulza (which will serve in the role as the original zerg capital ship I wanted to make). The reason is, hatching the main Zerg Capital Ship from a drone as a building is causing problems that I don't know what the cause is. So I opted for building it from a "training" building. And just giving the order to build it is causing it to freeze. Come to think of it, the main freezing problems got a little worse after Farty's advice for the iscript.



None.

Mar 4 2015, 11:02 pm Sand Wraith Post #76

she/her

Are you able to successfully morph the Overmind Coccoon?
Did you make sure to set the EXE Edit that would allow all Zerg buildings to train units?
Are you training the Kukulza from the Overmind Coccoon?
EDIT: I believe you will require a "Working" animation for the Overmind Coccoon. This would be similar to the Barracks's working animation. Check the Barracks's script to see if it can help you.




Mar 4 2015, 11:14 pm Neiv Post #77



I did some looking at the freeze, and adding single wait to the Overmind_withShell_GndAttkToIdle fixes it. I have no clue why this would happen, but for some reason using only waitrands is not enough there. It's really weird as about every other unit uses only them and works fine...

The cocoon cannot move because it is set to use iscript.bin control in flingy.dat, but your iscript has no move opcodes.



None.

Mar 5 2015, 12:36 am SCRuler Post #78



I'm not trying to make the cocoon move, just the added abomination flyer.
I can morph the cocoon. I enabled the zerg training thing. I am training the kulkulza from the overmind cocoon.
As for the cocoons iscript, there is an inbuilt "isworking" order.


# ----------------------------------------------------------------------------- #
# This is a decompile of the iscript.bin file 'data\scripts\iscript.bin'
# created on: Wed Mar 04 21:03:31 2015
# ----------------------------------------------------------------------------- #

# ----------------------------------------------------------------------------- #
# This header is used by images.dat entries:
# 923 OvermindCocoon (zerg\XOvermnd.grp)
.headerstart
IsId 405
Type 20
Init OvermindCocoonInit
Death OvermindCocoonDeath
GndAttkInit [NONE]
AirAttkInit [NONE]
Unused1 [NONE]
GndAttkRpt [NONE]
AirAttkRpt [NONE]
CastSpell [NONE]
GndAttkToIdle [NONE]
AirAttkToIdle [NONE]
Unused2 [NONE]
Walking [NONE]
WalkingToIdle [NONE]
SpecialState1 [NONE]
SpecialState2 [NONE]
AlmostBuilt OvermindCocoonAlmostBuilt
Built OvermindCocoonBuilt
Landing [NONE]
LiftOff [NONE]
IsWorking OvermindCocoonIsWorking
WorkingToIdle OvermindCocoonIsWorking
WarpIn [NONE]
.headerend
# ----------------------------------------------------------------------------- #

OvermindCocoonInit:
imgul 924 0 0 # OvermindCocoonShad (zerg\ZovShad.grp)
playfram 0
goto OvermindCocoonLocal00

OvermindCocoonLocal00:
wait 125
goto OvermindCocoonLocal00

OvermindCocoonDeath:
playsnd 774 # Zerg\Bldg\ZBldgDth.WAV
imgol 60 0 0 # ZergBuildingDeath (thingy\zBldDthS.grp)
wait 3
lowsprul 187 0 0 # ZergBuildingRubbleSmall (thingy\ZRubbleL.grp)
wait 1
end

OvermindCocoonAlmostBuilt:
playfram 0
goto OvermindCocoonBuilt

OvermindCocoonBuilt:
waitrand 1 3
OvermindCocoonIsWorking:
playfram 1
wait 2
playfram 2
wait 2
playfram 3
wait 4
wait 1
wait 2
playfram 1
wait 2
playfram 0
wait 4
goto OvermindCocoonIsWorking



None.

Mar 5 2015, 1:29 am Sand Wraith Post #79

she/her

I took a stock SCBW and these are the changes I made:

-Give Overmind Cocoon "Produces Units" flag (This doesn't actually appear to do anything)
-Give Overmind Cocoon its buttons to be able to train units
-Give Overmind Cocoon button to train Kukulza and ordinary Mutalisk
-Give necessary requirements to Kukulza and Mutalisk

It worked perfectly fine, except for one detail: It is impossible to cancel the Mutalisk. I suspect this has to do with how it is expected to be morphed and not trained. I would need to investigate further to provide more information.

The Kukulza has no problems being cancelled from production.

Since you seem to have made no changes to Overmind Cocoon except its buttons and maybe some units.dat changes, I suspect it has to do with the unit you are attempting to create.

Your custom Zerg Capital Ship replaces Kukulza, correct? In this case, I suspect it has to do with its script. Have you applied Neiv's suggestion?




Mar 5 2015, 1:46 am SCRuler Post #80



I haven't touched the unit script yet since my last edits. I honestly am at my wits end with it. I may have to opt for using a critter as the base, since overmind with shell is not boding well as the base. I'm using the guardian kulkulza btw.

Just changed the ragnasaur iscript to fit.
Will test in a moment.

Ok, I tested it. Still freezes the game. Everything is enabled.
I will post the iscript again. it is one for the ragnasaur this time. I fear, however, that it's impossible to implement it.

Post has been edited 1 time(s), last time on Mar 5 2015, 1:53 am by SCRuler.



None.

Options
Pages: < 1 « 2 3 4 5 >
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[09:38 pm]
NudeRaider -- Ultraviolet
Ultraviolet shouted: NudeRaider sing it brother
trust me, you don't wanna hear that. I defer that to the pros.
[2024-4-27. : 7:56 pm]
Ultraviolet -- NudeRaider
NudeRaider shouted: "War nie wirklich weg" 🎵
sing it brother
[2024-4-27. : 6:24 pm]
NudeRaider -- "War nie wirklich weg" 🎵
[2024-4-27. : 3:33 pm]
O)FaRTy1billion[MM] -- o sen is back
[2024-4-27. : 1:53 am]
Ultraviolet -- :lol:
[2024-4-26. : 6:51 pm]
Vrael -- It is, and I could definitely use a company with a commitment to flexibility, quality, and customer satisfaction to provide effective solutions to dampness and humidity in my urban environment.
[2024-4-26. : 6:50 pm]
NudeRaider -- Vrael
Vrael shouted: Idk, I was looking more for a dehumidifer company which maybe stands out as a beacon of relief amidst damp and unpredictable climates of bustling metropolises. Not sure Amazon qualifies
sounds like moisture control is often a pressing concern in your city
[2024-4-26. : 6:50 pm]
Vrael -- Maybe here on the StarEdit Network I could look through the Forums for some Introductions to people who care about the Topics of Dehumidifiers and Carpet Cleaning?
[2024-4-26. : 6:49 pm]
Vrael -- Perhaps even here I on the StarEdit Network I could look for some Introductions.
[2024-4-26. : 6:48 pm]
Vrael -- On this Topic, I could definitely use some Introductions.
Please log in to shout.


Members Online: Roy, Oh_Man, RIVE, Excalibur