• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Game Interface Text to Display Variable Text

Status
Not open for further replies.
Is it possible to modify Game Interface Text to show text(string/integer variable) that can be changed at will during the game? Such as how when your hero dies it shows the text with it's name and level has died which are variable and can change during the game.

So for example if I wanted to make "Not enough mana." show different comedic text each time. Or if I wanted the Chaos damage type tooltip text to look snazzy with changing colors.

As far as I can tell, the game interface text does use some varying text thingies like %d %u %s but those are specific to its own text field and the value it shows is probably not manipulable at all.

The ideal for me would be able to show a variable's value that is used in triggers, into the game interface text.
 
Last edited:
Level 24
Joined
Aug 1, 2013
Messages
4,657
Not by default, but you can remove the death message in the Object Editor and then create the text message via triggers.

Not enough mana could be done by checking mana cost of the ability (the ability may not cost mana but has to be done by triggers).

Chaos damage could be done with a damage system using texttags as combat text.

So, basically, trigger what you want to adjust... and never use any default things any more... or be happy with what th default things are.
 
Level 24
Joined
Aug 1, 2013
Messages
4,657
Thank you for replying but I'm not looking for work-arounds. If this is possible, I'm sure it would open up some interesting possibilities for game interface.

I didnt give you a workaround. Instead, I told you to create it yourself.
A workaround is doing something that you should create yourself, but then do it on a way that requires little to no coding. A workaround often has less features and misses the base data design.

If you want interesting stuff, make it yourself.
Blizzard didnt intent to let WC3 be a custom map game so they only bothered about the things that are really essential for custom maps.

If you want something, code it yourself.
 
I can see that it's hard coded but thought maybe someone has, or can find some breakthrough method if they tried to.

To clarify, the point is if it is ever going to be possible to 'improve' the built in game interface through some crazy method. I do realize you two hivers have sternly said no, but it doesn't mean that there isn't some evil genius in the shadows who has already done such a thing successfully.

The exact thing I'm imagining is the "game interface text" to be able to show an integer variable, the same variables used and modified by triggers.
 
If there is a way to do this, I have a feeling it might be to modify the common.j or blizzard.j files. I'm not that good with Jass but if you were you might know how to put a variable into the base code (library?). Some other files you might look at would be war3mapSkin.txt and war3mapMisc.txt. These just let you change some interface that is no accessible through the editor, but if you can figure out how to add variables to these files, it could be done.
 
Level 24
Joined
Aug 1, 2013
Messages
4,657
Modifying blizzard.j is pretty useless as it is simply the bridge between GUI and JASS.
Modifyinh common.j is also pretty useless because it is not doing anything itself... it just sends orders through to the game.dll... and there are not much more orders that can be passed through than are defined in common.j. IIrc, there is only one missing native named UnitAlive (or something similar to that).

What you have to do to make it completely work without triggering it, you would have to edit the game.dll... which is the same as hacking into the game and creating a modified version of it, you then have to tell everyone to use your game.dll version instead of the normal one so they are able to run your map (and most probably cant play any other maps including the normal maps and campaigns any more) by using a secretly modification of the game... aka a virus.

What you want can be done, you are simply just trying to do it on another way than how it should and has been done.
Triggering/scripting is not some ancient black magic... if you want something out of the ordinary WC3 melee maps, you have to trigger/script it.
I cant believe why that is not satisfying for you.

Also, WC3 exists for a very long time now and there are people with great minds that have searched through the game to find things to exploit and use to increase the capabilities of map makers.
If you really think that something already exists, then you ask google (dont try bing).
If google says no, then too bad for you.
 
Level 23
Joined
Oct 12, 2008
Messages
1,783
Also, WC3 exists for a very long time now and there are people with great minds that have searched through the game to find things to exploit and use to increase the capabilities of map makers.

This.
With over a decade of people modding said game, if it was possible; it would have been done at least 7++ years ago.
 
Wiethol, I take it you cannot import game.dll into import manager and make it work from there?

Also, I have to disagree as a matter of general principle, not everything that can be done has been done and google will not always have the answers (99.9% of the time it will). Some things can be changed that no one has tried to change before. People build of of the innovations of others and new systems and techniques are always being developed. I have no idea how to do what he asked but I tried to point him in the right direction. You did even better, but I don't think there is any reason to discourage people who want to do something which is thought to be impossible. Even if it turns out to be impossible, he will doubtlessly learn something in the process. Anyway, that's my 2 cents.
 
Status
Not open for further replies.
Top