Modding thread

Post Reply
User avatar
Lavarinth
Xel'naga Administrator
Xel'naga Administrator
Posts: 6539
Joined: Wed Aug 16, 2006 5:21 pm
Location: His Ashworld Planet

Re: Modding thread

Post by Lavarinth »

Yes, I made the logo intro, I know.

*continues working feverishly on the other half*
- - Lavarinth
Campaign Creations Administrator
User avatar
IskatuMesk
Xel'naga World Shaper
Xel'naga World Shaper
Posts: 8332
Joined: Sat Feb 07, 2009 1:40 pm
Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞ‌ా
Contact:

Re: Modding thread

Post by IskatuMesk »

Ricky -> Replacing water settings with lava settings. It's not a complete conversion, there's some animation missing for some reason, but it's basically water that burns.

I don't think it is possible to have a second type of creep, completely replace creep with Lava, or even give creep an emissive. Which is extremely depressing.

That said there might be another way to create Hellfire, I just don't know how yet. It will most certainly involve custom meshes and particles and will need the editor.
Last edited by IskatuMesk on Wed Mar 17, 2010 2:50 pm, edited 1 time in total.
Gameproc
Though we stand alone, stand we shall.
User avatar
Ricky_Honejasi
Xel'naga Solar Moderator
Xel'naga Solar Moderator
Posts: 2011
Joined: Wed Aug 16, 2006 3:50 pm

Re: Modding thread

Post by Ricky_Honejasi »

IskatuMesk wrote: Ricky -> Replacing water settings with lava settings. It's not a complete conversion, there's some animation missing for some reason, but it's basically water that burns.

I don't think it is possible to have a second type of creep, completely replace creep with Lava, or even give creep an emissive. Which is extremely depressing.

That said there might be another way to create Hellfire, I just don't know how yet. It will most certainly involve custom meshes and particles and will need the editor.
Well if a second creep isn't possible, it might be possible to replace terrain by other terrain via triggers (possible in WC3). Then to determine if the terrain is possible to built on is to determine if there that type of terrain in the locations where the building would be attempted to built (also possible in WC3 even if can be a bit painful).

The drawbacks would be that creep still go over it and that building construction placement might not feel "natural" (doesn't show the correct red/green "legal" spots when hovering, potential denial only on build attempt, etc.) . However, the possibility of using a different terrain more or less as a secondary creep isn't dead.
Iggyhopper
Terran Supply Depot Clerk
Terran Supply Depot Clerk
Posts: 10
Joined: Mon Mar 15, 2010 2:19 pm

Re: Modding thread

Post by Iggyhopper »

I have a mod tool. Going to be open source. Right now, the first release had to have lots of power but with little work, and it does. So anyone want to try? I'm going to be doing a little beta test, making sure everything works okay.

I'll only pick like, three of you, lol. Also, you have to know XPath so you can get the most out of it, better get studying now. This release will also only work for people who have an official beta key, not some launcher.

Dudes, you can have a second creep. It'll just be really really technical and deep modding, probably only achievable via the editor, well without making your fingers burn.
Last edited by Iggyhopper on Thu Mar 18, 2010 4:56 am, edited 1 time in total.
User avatar
UntamedLoli
Protoss Zealot Practice Dummy
Protoss Zealot Practice Dummy
Posts: 856
Joined: Sun Oct 15, 2006 2:36 pm
Location: Canada, BC
Contact:

Re: Modding thread

Post by UntamedLoli »

So, Ricky.

Want in the beta?

Stop being dead otherwise so I can send you a key.
Image
Image
Iggyhopper
Terran Supply Depot Clerk
Terran Supply Depot Clerk
Posts: 10
Joined: Mon Mar 15, 2010 2:19 pm

Re: Modding thread

Post by Iggyhopper »

I can has one?

:O
User avatar
Ricky_Honejasi
Xel'naga Solar Moderator
Xel'naga Solar Moderator
Posts: 2011
Joined: Wed Aug 16, 2006 3:50 pm

Re: Modding thread

Post by Ricky_Honejasi »

Well, I did try to think of some new ideas although I pretty much failed to think anything new worthwhile to suggest so far.

As for the beta, seems some people did get bonus beta keys. I already accepted someone else's key offer.
User avatar
Xenon
Zerg Queen's Nest Slave Trainee
Zerg Queen's Nest Slave Trainee
Posts: 771
Joined: Mon Oct 23, 2006 3:29 pm

Re: Modding thread

Post by Xenon »

I want one! Did Mesk get one to give out too?
User avatar
Lavarinth
Xel'naga Administrator
Xel'naga Administrator
Posts: 6539
Joined: Wed Aug 16, 2006 5:21 pm
Location: His Ashworld Planet

Re: Modding thread

Post by Lavarinth »

Xenon wrote: I want one! Did Mesk get one to give out too?
Majority if not all of us did.
- - Lavarinth
Campaign Creations Administrator
User avatar
RazorclawX
Xel'naga World Shaper
Xel'naga World Shaper
Posts: 2101
Joined: Thu Aug 24, 2006 7:19 pm

Re: Modding thread

Post by RazorclawX »

I gave one out already.
Image
-- Razorclaw X
Creator of Wanderers of Sorceria and Vision of the Future
User avatar
IskatuMesk
Xel'naga World Shaper
Xel'naga World Shaper
Posts: 8332
Joined: Sat Feb 07, 2009 1:40 pm
Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞ‌ా
Contact:

Re: Modding thread

Post by IskatuMesk »

I found a Realism setting for Starcraft 2.

Max realism -

[imgwh 640x400]http://img651.imageshack.us/img651/4829 ... 401266.jpg[/imgwh]

Less intense but still realistic realism -

[imgwh 640x400]http://img30.imageshack.us/img30/5541/s ... 013490.jpg[/imgwh]

Corbo's terrain textures -

[imgwh 640x400]http://img502.imageshack.us/img502/1452 ... 250052.jpg[/imgwh]

Silver lava doesn't seem to be finished, only had the animating super low-res texture that didn't actually animate.
Gameproc
Though we stand alone, stand we shall.
User avatar
Ricky_Honejasi
Xel'naga Solar Moderator
Xel'naga Solar Moderator
Posts: 2011
Joined: Wed Aug 16, 2006 3:50 pm

Re: Modding thread

Post by Ricky_Honejasi »

More questions :

F1) Buttons seen globally

I noticed you could see some passive buttons when selecting enemy units (if I am not mistaken, those include "Detector" and Sensor Tower's "Sensor" abilities).

Thus :
1) Is there a way to show other abilities to all non-owner players (that doesn't have control) or is it hardcored?
2) If so for #1, would it allow any other player to use the unit's active abilities that are shown "openly"?
3) If so for #2, can you also show up the normal commands (move, patrol, etc.) for every players' use?
4) If so for #2, is it possible to restrict to allies that doesn't have control?

F2) Damage Detection

I heard that you can detect damage on a unit and then produce some result. It is supposed to be something off Immortal's Hardened Shields (either the ability itself or something off it).

For the result, attempt to make any attacker die when/after dealing damage to a specific unit type (that detects damage).

If you managed that, attempt to make the attacker an unit that is inside a bunker, see if that if there is an attack, is it the bunker that get destroyed or it's the unit firing inside the bunker that dies?

F3) A clue on number of players?

If possible. make a galaxy loop to create one unit per player based on player number. Attempt a loop up to player number 40 (for the best case scenario of 32 human players + 8 computer-only players). Try to see how many they spawn.

In WC3, it was 12 humans + 4 "support" computer players. In SC1, I believe it was 8 + 2-4 "support" computer players.


F4) More Warp-In Fiddling

Is it possible for the Warp Gate to not share the Warp-In cooldown behind available units? For example, if you can warp-in 1 zealot and 1 DT that you can actually warp-in the zealot, have its own cooldown and then be able to warp-in the DT after.

In addition, is it possible to warp-in more than 1 per Warp Gate without a cooldown? (as in global number of units to warp-in)

If so for the above, it is possible to set the number of units per unit-type (ex : 5 zealots, 3 stalkers, 2 DTs, etc.) that can be warp-in?

If you select multiple buildings with all the possible modifications above, does the global quantity  still adds up correctly with all buildings of the same type (ex : 3 buildings of 5 zealots each would show up 15 if you select all three)?

F5) Warp-in Cost ties

Is the Gateway's warp-in's unit cost is tied to the units' costs or it is a separate cost that is just the same?

F6) Ressources stack maxes

What is the maximum minerals/gas youcan have on mineral clusters and on gas patches to harvest from?

F7) So many harvesters!

Determine the maximum of miners can be on a same mineral cluster AND inside a gas refinery.

F8) Godly harvesters!

What is the lowest mining delay for extracting some minerals off a mineral cluster AND gas off a refinery?

Does putting 0.00 mining delay make SC2 crash?
Does putting a negative mining delay make SC2 crash?

F9) Top-secret spying

Is it possible for the Terran Scanner to reveal without the special effects (that shows that someone used the Scanner)?

How about one Scanner ability with effects and one version without the effects existing?

F10) Extra Supplies everywhere!

Can you modify the Extra supplies ability to make it work on other buildings or even units?

F11) Extra Supplies deviant

Is it possible to make the Extra Supplies ability to give a different beneficial effect yet affect a single target (building or unit)?

F12) Screw SCVs, I want to keep marines!

Modify the Command Center's "Load SCVs" ability into "Load Marines" (since it only loads SCVs otherwise). It should be unit-type based.

Also does military units inside it acts like if they were inside a flying transport (nothing) or inside a bunker (shoots)?

Also try to change it to load any unit type nearby (not just one type).

F13) Internal Repairs

Can you make the SCV's repair ability to appear on a bunker while a SCV is loaded AND be able to point the repair on the loaded (but damaged) bunker to repair it?

F14) Safe Nuking

Same idea as F13 but allowing a ghost to nuke while inside a bunker.

F15) Nuke Surfing

Same idea as F14 but this time on a flying transport. If required, change the transport's transport ability into the bunker ability.

If a flying transport carrying the nuking ghost moves while the ghost nukes, does it cancel the nuke?

If not, does it cancel when the flying transport goes out of ghost's nuking range (during nuke)?

F16) Repair or Heal Protoss Shields

Either make the SCV's Repair ability, Medivac's Heal ability or any other source repair Protoss Shields. Very high Protoss shields regeneration don't count.
Last edited by Ricky_Honejasi on Mon Mar 22, 2010 7:49 pm, edited 1 time in total.
User avatar
Lavarinth
Xel'naga Administrator
Xel'naga Administrator
Posts: 6539
Joined: Wed Aug 16, 2006 5:21 pm
Location: His Ashworld Planet

Re: Modding thread

Post by Lavarinth »

Okay, now.. Go solve them, beta player! Just teasing.
- - Lavarinth
Campaign Creations Administrator
User avatar
IskatuMesk
Xel'naga World Shaper
Xel'naga World Shaper
Posts: 8332
Joined: Sat Feb 07, 2009 1:40 pm
Location: M͈̙̞͍͞ͅE̹H̨͇̰͈͕͇̫Ì̩̳CO̼̩̤͖͘ జ్ఞ‌ా
Contact:

Re: Modding thread

Post by IskatuMesk »

Armageddon Onslaught - Building the Concepts

What we know works -

Multiple types of powerfields.
Randomized weapon cooldowns of some nature.

What we are unsure is possible or how it works -

Multiple-weapon attacks. (HKS said that the game seems to just fire what has the shortest cooldown which is kind of silly and dumb but there's probably something we're not looking at). All attempts to make units use more than one weapon at once have failed. Dishearting...

What we know doesn't work (at least not right now) as in probably hardcoded unless the editor shows otherwise

Custom creep outside of simple texture changes and placement formation.
Two types of creep.
Using lava for creep (it has no emissive for starters which is a HUGE blow to custom creep in general)

I am officially entering the modding scene as of now.

Actordata.xml

This is surely one of the most important files in all of Starcraft 2. It is compared to the iscript.bin but is less powerful in that it doesn't seem to be able to directly control animations (frame rates, animation speeds...) but handles all sorts of other shit.

Code: Select all

    <CActorModel default="1" id="TerranFlameModel">
        <On Terms="ActorCreation" Send="$Birth"/>
        <On Terms="AnimDone; AnimName Birth" Send="$Stand"/>
        <On Terms="AnimDone; AnimName Stand" Send="$Stand"/>
        <On Terms="AnimDone; AnimName Death" Send="Destroy"/>
        <On Terms="SupporterDestruction" Send="$Death"/>
        <On Terms="ActorOrphan" Send="Destroy"/>
        <Host Subject="_Selectable"/>
        <Supporter Subject="::Creator"/>
        <HostSiteOps Ops="SOpAttachHarness"/>
        <!-- For cloaking Terran burning buildings.  Otherwise, the fire gives their location
             away. -->
        <Inherits index="CloakEffect" value="1"/>
        <Inherits index="Visibility" value="1"/>
    </CActorModel>
    <CActorSound default="1" id="TerranFlameSound" parent="SoundContinuous">
        <Host Subject="_Selectable"/>
    </CActorSound>
Without the editor, modifying files of this extreme complexity will be difficult, but Actordata is where my attention is going to be largely focused.

Analysis

Using my ineptitude as a spear, I'll drive my cock into this file and try to understand wtf is going on.
       
       
       
On Terms is referring to an animation and an event during that animation. This is just like wc3, really, but softcoded. $stand and such are calling something else, either from another file or a hardcoded routine, that tells the engine what's going on and what to do next.
       
This is interesting to me because on birth it's telling the engine to go to the Stand sequence - this is not hardcoded? I am not programmy enough to understand the implications of this but it looks to be a lot like the iscript in how you can pick and choose where headers go.
       
       
       
No idea what SupporterDestruction is referring to, but Orphan is quite possibly referring to spawned effects like fire, lights, ect. Not sure what host subject is referring to.
   
FUCK YES SOUNDS THAT AREN'T ATTACHED TO MODELS WE HAVE STANDARDS FINALLY

Code: Select all

    <CActorUnit id="DarkShrine" parent="GenericUnitStandard">
        <PortraitModel value="ExecutorPortrait"/>
        <BuildModel value="DarkShrineBirth"/>
        <PlacementModel value="DarkShrinePlacement"/>
        <PlacementSound value="Protoss_BuildingPlacementSmall"/>
        <DeathArray index="Normal" ModelLink="DarkShrineDeath" SoundLink="DarkShrine_Explode"/>
        <DeathArray index="UnderConstruction" ModelLink="ProtossWarpInDeath" SoundLink="DarkShrine_Explode"/>
        <EventDataSound Name="BuildingWarpIn" Actor="UnitSound" Sound="Protoss_BuildingWarpIn"/>
        <AnimBlendTime value="0.750000"/>
        <Macros value="UnpoweredAnim"/>
        <Macros value="QueueAnim"/>
        <Macros value="BuildingFlattenTerrainMacro"/>
        <Macros value="ProtossBuildingPowerUp"/>
        <ShowBlobShadow value="0"/>
        <BarWidth value="85"/>
        <BarOffset value="0"/>
        <SoundArray index="Ready" value="DarkShrine_What"/>
        <UnitIcon value="Assets\Textures\btn-building-protoss-eyeofadun.dds"/>
        <HeroIcon value="Assets\Textures\btn-building-protoss-eyeofadun.dds"/>
        <ShieldLayer value="Assets\Textures\Wireframe-Protoss-DarkShrine-Shield01.dds"/>
        <ShieldLayer value="Assets\Textures\Wireframe-Protoss-DarkShrine-Shield02.dds"/>
        <ShieldLayer value="Assets\Textures\Wireframe-Protoss-DarkShrine-Shield03.dds"/>
        <GroupIconLayer value="Assets\Textures\Wireframe-Protoss-DarkShrine.dds"/>
        <WireframeLayer value="Assets\Textures\Wireframe-Protoss-DarkShrine.dds"/>
        <LifeArmorIcon value="Assets\Textures\btn-armor-protoss-air.dds"/>
        <ShieldArmorIcon value="Assets\Textures\btn-upgrade-protoss-shieldslevel1.dds"/>
        <GlossaryImage value="Assets\Textures\btn-building-protoss-eyeofadun.dds"/>
    </CActorUnit>
    <CActorSplat id="DarkShrineSplat" parent="GenericUnitSplat" unitName="DarkShrine"/>
I think these are fairly self-explanatory but I'll run through them.

PortraitModel - Portrait 3d model.
BuildModel - Possibly the build animation which is separate from the unit (unlike wc3)
PlacementModel - looks like that the green overlay is a unique model.
Placementsound - Unique placement sounds for every building good, good...
DeathArray - An animation event for dying that seems to be able to depend on what animation the model is currently in. I think it's really cool that this controls the death animation during construction independently of the construction itself, surely you can also use this for channeling cast animations on a boss/caster and make them explode violently or something.
EventDataSound - Not quite sure how this works in relation to the value "UnitSound". Might be an xml file... which would be great since I can then make a custom file and organize a little better.
AnimBlendTime - Not sure. Might be similar to the "smoothing" that wc3 had? Which would be great since some models will need those from WoW and such.
Macros Value - Not a clue what a "Macro" is. Maybe another series of animations?
ShowBlobShadow - Might be referring to the basic shadow from low-detail settings that overrides dynamic shadowing?
BarWidth/Offset - Health bar?
SoundArray - Looks like this controls unit responses and such.
UnitIcon - Build icon most likely.
HeroIcon - Icon for HUD if the unit is a hero most likely.
ShieldLayer - Multiple instances of this, the shield is comprised of multiple models? Awesome!
GroupIconLayer - Same value as wireframe... probably for group select.
WireframeLayer - Yes, you're going to be making wireframes in much the same way you did sc1, but here the files are bigger so you can just render either untextured and process as normal or render textured and filter it to fuck. Probably won't be TOO hard once you get used to it.
LifeArmorIcon - It seems the game does support per-unit unique icons but Blizzard is just too lazy to make sc1-styled unique icons.
ShieldArmorIcon - Same deal.
GlossaryImage - Seems like those tech tree screens are actually dynamic which is pretty cool. Or you need to manually edit them, but I'm sure this is where their icon is defined.
CActorSplat - Either a texture left behind when the building dies or a ground texture like wc3. Not sure...
       
       
       
       
This is some confusing bullshit right here.

Let it begin...
Gameproc
Though we stand alone, stand we shall.
User avatar
Xenon
Zerg Queen's Nest Slave Trainee
Zerg Queen's Nest Slave Trainee
Posts: 771
Joined: Mon Oct 23, 2006 3:29 pm

Re: Modding thread

Post by Xenon »

Remember the first SC2 video released? It showed the battlecruiser firing at air and ground targets at the same time, effectively using two weapons at once. It seems unlikely they chopped this capability out of the engine, but it probably requires xml tags with no examples used currently (and impossible to guess) so the editor will be needed.

You should be able to create a Phoenix Fire type effect that periodically picks targets in range and fires stuff at them.

If all else fails, you can make the unit a bunker with other units inside to give it different weapons.
Post Reply