I want ideas for Warcraft III Systems!

uberfoop

~=Admiral Stukov=~
Reaction score
177
That is a lie. You CAN convert JASS to GUI - its just that nobody has actually done it yet. If we can so easily change ice to water, why can't we change water back to ice?

It would be quite simple - some program would identify a line of JASS, see if any GUI functions match it, and if it doesn't, it skips it, and notes it in an error log.

It won't be able to convert complex JASS, but it would be effective for us beginners who don't know anything useful about JASS.
It doesn;t matter how complex the JASS is. Almost anything mapper-written would be half errors.
 

TheSNGuy

New Member
Reaction score
1
Okey dokey Here's another REALLY off the wall suggestion.

Use game caching and a simple game cache relay program to create a system that allows potentially unlimited people on a map (through multiple portal maps). Each running map creates a game cache, the program sends it to the other person (on the other side the same thing is happening) then the map loads the new file and uses it to recreate the opponents actions.


Talk about off the wall lol
 

Sooda

Diversity enchants
Reaction score
318
Save/Load code is a bit hard because there are many things to do.
There should be a way to do it, but it will take an infinite amount of values.. :p

Like :

Code:
call HeroSave(GetTriggerUnit(),true,36, false, 3, 2, 1, false, false...)

Argument 1 : Triggering unit, meaning unit to be saved
Argument 2 : Save in Singleplayers' game cache if false with a code, if true, returns a code only.
Argument 3 : 36 String Values, meaning "abcdefghijklmnopqrstuvwxyz0123456789". May be "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" for 62, "abcdefghijklmnopqrstuvwxyz" for 26, and "0123456789" for 10.
^^
Argument 4 : Remove hero if true after saving, if false, do not remove.
Argument 5 : X Arguments' Handles for Levels. Returns the formula to know the max handle is Argument3^X. See Argument 8 for more informations.
Argument 6 : X Arguments' Handles for Items. Returns the formula to know the max handle is Argument3^X.
Argument 7 : X Arguments' Handles for Heroes. Returns the formula to know the max handle is Argument3^X.
Argument 8 : If false, saves the level, if true, saves the EXACT exp. Meaning Argument3^Argument5 must be at least bigger than MaxExp^Argument3.
Argument 9 : If false, do not save the location, if true, saves the exact location. Returns automaticly 8 digits.
...

And I can write a whole amount of arguments :p
I' m still dreaming about my 5 digit save/ load code what would store most things what needs to be saved if it could only be minimized with JASS so it would be possible. I personaly find hard to write down 20 letters of code for save/ load and I usualy lose them somewhere and can' t find later >.<
Things can be made always more difficult or harder but lets try to simplify it.
  • Save/ load code is usualy used in a multiplayer (This sentence bacasue of I didn' t get argument 2 :eek: )
  • Strenght, Agi, Int
  • Exp.
  • Abilities (4 with prox 4 levels but usualy there is +-99 levels.)
  • Items (2x 6 slots for people who like to store things in their "vault" for later use.)
Thinking about it you are right to make universal save/ load code there can be many arguments but to make "defult" save/ load code for melee map it should be ok. I' m trying to fit needed arguments almost only for usual Warcraft Melee map. If the triggger or JASS code could be 1000 lines, etc and it results in 5 digits save/ load code it would be good in my opinion.
 
D

Dr4gonL0rd

Guest
> A majority of the mapping community actually does not know JASS.
If they actually do want to know it then they can learn. Making a tool that would convert Jass to GUI would not only be a waste of time for the programmer that would do it, but also for the person that would use it - I just know a bunch of people would rely on it too much and would never figure out the true advantage of Jass.

Well, for those of you who dont know this; I dont know JASS. But the idea of this JASS -> GUI program sounds like a good idea to me. One of the reasons that I havent started learning JASS is that I find it a little bit too daunting. All the strange 'coding' language was never really something I understood to even the smallest degree. But this program (should it be created) could significantly help me in learning JASS. Just my thoughts.
 

Tom Jones

N/A
Reaction score
437
That is a lie. You CAN convert JASS to GUI - its just that nobody has actually done it yet. If we can so easily change ice to water, why can't we change water back to ice?

It would be quite simple - some program would identify a line of JASS, see if any GUI functions match it, and if it doesn't, it skips it, and notes it in an error log.

It won't be able to convert complex JASS, but it would be effective for us beginners who don't know anything useful about JASS.
Yea, the theory is quite simple, however in practical it's freaking insanety... Most jassers use the native functions, the we uses BJ functions, thus you'll have to change every single function to their natives equelivant. Some functions like if/then/else, unit group and player groups are handled internally in the we, creating extra functions for the actions, this would also be kinda hard to translate from jass to gui. If you insist on a third party tool to make it easier for the gui users, i would suggest a program that allows the following:
A conditional loop action
A proper if/then/else function
A proper unit group funcion
A function that takes a handle and a string, and creates a local
A cleanup function, that takes a handle and a string, and performs the proper destroy/remove action, and nullifies the value.
 

Chocobo

White-Flower
Reaction score
409
I' m still dreaming about my 5 digit save/ load code what would store most things what needs to be saved if it could only be minimized with JASS so it would be possible. I personaly find hard to write down 20 letters of code for save/ load and I usualy lose them somewhere and can' t find later >.<
Things can be made always more difficult or harder but lets try to simplify it.
  • Save/ load code is usualy used in a multiplayer (This sentence bacasue of I didn' t get argument 2 :eek: )
  • Strenght, Agi, Int
  • Exp.
  • Abilities (4 with prox 4 levels but usualy there is +-99 levels.)
  • Items (2x 6 slots for people who like to store things in their "vault" for later use.)
Thinking about it you are right to make universal save/ load code there can be many arguments but to make "defult" save/ load code for melee map it should be ok. I' m trying to fit needed arguments almost only for usual Warcraft Melee map. If the triggger or JASS code could be 1000 lines, etc and it results in 5 digits save/ load code it would be good in my opinion.

Ok I restart what I wrote :
Argument 2 is to save using codes OR/AND game cache. If true, saves simply using codes, if false, saves in game cache and uses codes.

call HeroSave(GetTriggerUnit(),true,36, false, 3, 2, 1, false, false, 0, 3, 3, 3, true, 12, true, 4...)

Argument 1 : Triggering unit, meaning unit to be saved
Argument 2 : Save in Singleplayers' game cache if false with a code, if true, returns a code only.
Argument 3 : 36 String Values, meaning "abcdefghijklmnopqrstuvwxyz0123456789". May be "abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ" for 62, "abcdefghijklmnopqrstuvwxyz" for 26, and "0123456789" for 10.
^^
Argument 4 : Remove hero if true after saving, if false, do not remove.
Argument 5 : X Arguments' Handles for Levels. Returns the formula to know the max handle is Argument3^X. See Argument 8 for more informations.
Argument 6 : X Arguments' Handles for Items. Returns the formula to know the max handle is Argument3^X.
Argument 7 : X Arguments' Handles for Heroes. Returns the formula to know the max handle is Argument3^X.
Argument 8 : If false, saves the level, if true, saves the EXACT exp. Meaning Argument3^Argument5 must be at least bigger than MaxExp^Argument3.
Argument 9 : If false, do not save the location, if true, saves the exact location. Returns automaticly 8 digits.

Argument 10 : If Argument 2 Equal to False, then it saves in X slot. Meaning you can load the hero in the game cache in the key X, with a wrote like -load XX. So you can saves multiple heroes and do not have to rewrite again ever and ever in Singleplayer. :p
Argument 11 : X Arguments' Handles for Strength. Returns the formula to know the max handle is Argument3^X. If 0, Strength is not saved.
Argument 12 : X Arguments' Handles for Agility. Returns the formula to know the max handle is Argument3^X. If 0, Agility is not saved.
Argument 13 : X Arguments' Handles for Intelligence. Returns the formula to know the max handle is Argument3^X. If 0, Intelligence is not saved.
Argument 14 : Argument true or false. If true, takes the closest Item Storage of the owner of Argument 1, and saves its items. If false, Argument 15 is for nothing and Saving Item Storages is not used.
Argument 15 : Slots taken by the Item Save. Must be 2,4,6,8,10,or 12, each meaning in order 1,2,3,4,5,or 6 slots savable.
Argument 16 : If true, protects the code to its owner. If false, do not protect the code.
Argument 17 : If Argument 16 Equal to True, use Argument17 digits to save the player name. Meaning if more digits are allocated, more the system will be protected.
...

If the triggger or JASS code could be 1000 lines, etc and it results in 5 digits save/ load code it would be good in my opinion.

Imposible. Meaning we can only up to stringsmax^5 possibilities, it will simply reduce the possibilities. Meaning if we are using Base36, it returns only 60466176 possibilities, which is destroyed by using 6-slots-20itemIds (-3533824 unsavable spots), returning an use of 64000000 possibilities (bigger than 5^36 !).


Abilities (4 with prox 4 levels but usualy there is +-99 levels.)

Not possible. If we are going on a universal saving mode, we still have to define directly what abilities for each hero are allocated. :p Quite hard ^^
I wonder if a Multi-Instance will handle that.
 

Master

Thou shall be helped by...The Black Adder!
Reaction score
72
*ahem*
more ideas:
1.Yes, another save/load would be good. If, of course, you are very comfortable and sure that you will overpass the combination difficulties.
2.Some new kind of import that is not made yet. Though I already work on a lightning effect import tutorial :)
3.JASS spells with incredible magnificence are also a good one in my view.

Suit yourself. And...
~Have a nice and comfortable day ^^
 

uberfoop

~=Admiral Stukov=~
Reaction score
177
1.Yes, another save/load would be good. If, of course, you are very comfortable and sure that you will overpass the combination difficulties.
Save/load code would be good. But there's so many map-specific fields that it would be...limited.

2.Some new kind of import that is not made yet. Though I already work on a lightning effect import tutorial :)
Some kind of new import? Huh?

3.JASS spells with incredible magnificence are also a good one in my view.
Brilliant idea. Good JASS spells. Maybe we can have a JASS spell generator /sarcasm
 

Andrewgosu

The Silent Pandaren Helper
Reaction score
716
People...be real.

My suggestion is 'Hostility' system. Like in Diablo 2.

One player expresses hostility against another (which can only be done, when the player who is expressing, is in the safe zone). The player, whom against hostility is expressed, recieves a warning message saying that.

Normally, players treat each other like ally. When hostility is expressed, the player who expresses hostility treats the 'victim' as enemy and can attack him.
 
C

Chaoswizkid

Guest
Let me derail this nice little Save/Load chat for a moment. Sorry. But, here's a few of my systems that will, sadly, go unfinished. So here is one of them:

Squad creation and Formation.
The objective of this system is to organize the huge amounts of units you will have into a more managable army. Here's an example: You have twelve units selected. You press ESC. The unit you selected first will be changed into a "Squad Leader" unit, that you'll have to create. Rifleman -> Squad Leader (Rifleman), Footman -> Squad Leader (Footman), etc., or something like that. The remaining of your selection will become computer controlled, and will move to positions around your squad leader. Your squad leader will be in your selection, and will have a Formations ability (spellbook abilities rule). When you click on it, a set of formations (abilities) come up. Each formation (ability) has it's own bonus and it's defects. As an example, Assault gives minus movement, plus attack, stuff like that. You may want to include a seperate system to be attached to this for those effects. Anyways, when selected, the Squad Leader's squad will assume positions around the Squad Leader, setable by the map maker, just like the formations and minus/bonus effects, and will recieve those minus/bonus effects. When the Squad Leader is killed, the Squad itself will go into disarray (or not, it's applicable) for 5 seconds, and then the system will pick out the best fitted unit for Leadership. All Squad Leaders can lead a max of 11 other units (A squad is composed of 12, Squad Leader + 11 others), and have the ability to disband. That resets the Squad Leader, so it's a regular unit, and the units in the squad come under your control, not the computer's any more. You could even develop the system to accomodate the ability to add special squad based abilities. Like a Mortar squad, where the whole thing is mostly made of mortar squads, and can use mass bombardment, or something like that. It seems more complex than a regular system, but without the extra stuff I mentioned, it'd be more like a regular system. I do realize with the extra stuff, it would be encroaching upon making an actual game, but that was it's intention anyway.

I'll go and find my other systems and mention them to you. Hope you like that idea.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top