HomeUser Control Panel (unavailable in archive)ForumsTutorialsArt GalleryResourcesMaps

Interesting results?

04-03-2003, 03:01 PM#1
kharma
Well I'm sure everyone has a few interesting or quirky results from their map editing exploits, so I'm curious what everyones tale is. If you've managed to pull off something you think hasn't been done before or is just quite boggling, post it here and share with us. Maybe it might come in handy.

I have 2 things myself: one was accidental and the other was a labour of experimentation for my multiplayer RPG. So here they are -

The accidental one was a result of spell editing. I transformed the claws of attack +15 bonus into a hero ability and tested the map. I got that funny error where you can put as many hero points on the ability as you want, but it simply won't add the ability. The difference this time being that I actually was given the +15 damage..every single time. So at level 10 I had +150 damage showing on my hero stats. Evidently because I used an item ability as a base it still counted the bonus due to some difference between how item ability code works compared to unit/hero ability code.

The deliberate one was succesful after an hour of beating my head against the wall getting it to work. For my multiplayer RPG I wanted different terrains eg. snow, sandy dirt, city, dungeon etc. Achieving it is easy enough with the use of Zepir's world editor, but I also wanted the cliffs to go with them. Now anyone who's tried to add multiple cliff types to a map would know that it doesn't exactly work. With my experimentations I discovered another of War3's quirks: The Cliffdata.slk can be implemented into a map for multiplayer support, but the companion terrain.slk can't! Ahh..crazy old Blizz.

Anywho, this gave me the exact opening I needed. Without going into too much detail here, I created a custom Clifftypes.slk file with references to imaginary texture files and imported it along with my 'imaginary' textures. Since War3 doesn't have any knowledge of the textures in the mpq files, it's forced to read the textures from the map. To make the map in the first place, I used Zepir's Editor and just typed in the imaginary cliff codes and Warcraft interpreted it. So now my map has 5 different cliffs, and is 100% compatible with bnet :D.


Ok guys, time to share your stories. Don't be shy, it's time for show and tell :P.

~kharma
04-03-2003, 03:51 PM#2
PitzerMike
I have worked out a way to get the gold and wood cost of buildings and units. Basically it works like this:

- I have a list of all unit type ids ('hfoo' ...) in a an integer array
- I have a loop that sends Ai Commands every 0.01 seconds at the beginning of the game, the commands contain the unit ids
- In the ai script I have a loop that catches the ai commands every 0.01 seconds and uses the common.ai functions GetUnitGoldCost(id) and GetUnitWoodCost(id) and sets the wood and gold of an unused player to the cost and the free hero tokens of the player are set to the current unit id
- The loop in my map that sends the ai commands also checks to see if the value for the free hero tokens of the player has changed and saves the value for wood and gold into a game cache labeled: "wood" + I2S(UnitId) and "gold" + I2S(UnitId)
- it takes some seconds until all units are saved so I have a short dialog or cinematic or whatever at the beginning to hide the lag

Then I can always get the cost of any unit by just using GetStoredIntegerBJ("gold" + I2S(UnitId),"yourcategory",yourgamecache)
I can use the same game cache for all the maps of my campaign you just have to initialize it in your first map
04-03-2003, 04:40 PM#3
MartinezTG
OK this was a long time ago (I think in version 1.02) and I don't know if it was me doing sth wrong or was it already fixed in te next versions but... here it goes - I've had a Unit Group in a certain region. In map initialization the units were supposed to be hidden so I made an action

Pick_Every_Unit_In_Units_In_Region2 and do Action(Unit(Hide-Picked_Unit)

After a few seconds the units were supposed to unhide so the same action but unhide:

Pick_Every_Unit_In_Units_In_Region2 and do Action(Unit(UnHide-Picked_Unit).

The last one didn't work so I think that it's just so -> The unit variables stay there but not the units themselves (I mean their appearance on the map). Any hidden unit in a region WILL NOT BE PICKED if you tell to pick any units from a region in which they are.

Martinez
04-03-2003, 06:45 PM#4
DaKaN
After many hours of debuging and whatnot, i managed to create a system that would generate a password based on your hero and spit the password back to the user so they can technally quit the map, play again at a different day, and keep the same hero. Same strn agil intel, exp, items, everything but the skills learned (just made the password even longer than it was). My sig contains a link to a very weak version of the password function (practicly no encryption and only uses 0-9 instead of 0-9, a-z, A-Z, and some symbols to allow 1 char space to represent 0-99 to cut the password size in 1/2). Very useful for experienced RPG makers that can add thier own form of encryption so players cant hack it easily.

Devised a custom exp system that can techanlly allow infanite number of levels for heroes (although it is still limited by the 10 skill points). Using a leaderboard and varibles to keep track of exp and not using blizzards exp system at all. This goes well in hand with my custom hero stats also.

I have 6 stats you can spend points into using dialog menus to build a totaly customizable hero for my RPG.

Strength - Is only damage for melee chars (e.g. the fighter classes) Will also be used to add carry capacity to a hero (so mages cannot pick up plated armor, or strong swords or things without putting alot into strn).
Dexterity - Increases units armor, based on class (some classes get 1 armor for every 2 points, or 1 armor for every 3, exct..) Also used for damage on archer classes.
Intelligence - Increases only maximum mana on a hero, or increases caster classes base damage.
Vitality - just adds to the maximum life of a hero (again based on class)
Health - adds a value to the heroes life regeneration, all heroes start off with no life regen and this stat increases the rate
Spirit - adds a value to the heroes mana regeneration, all heroes start off with no mana regen and this stat increases the rate

this was achieved by using custom upgrades and giving each hero these upgrades, and using alot of custom text.
Interesting results? - Wc3C.net