• 🏆 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!

Syringe

Status
Not open for further replies.
Level 6
Joined
Jul 3, 2014
Messages
1,280
[Release] Syringe - Warcraft III Mpq Injector


Syringe

Syringe is an MPQ injector which is able to inject user's files into the Warcraft III MPQ (No path required).

Syringe.exe can be used to install a mod's Models and textures into the warcraft III mpq.

The usage depends on the users.

Syringe is a command line application.

Warning: Having custom MPQs may get you banned on battle.net though, so offline or mod-only usage is advised.

Syringe uses a command system which defines the code run by syringe.

Example:
Code:
[color="white"]Injectfolder,war3,TestFolder,MyTestPath\;Injectfolder,war3,TestFolder2,MyTestPath\[/color]

Commands are separated with ";" and the parameters by "," and the first parameter is the function name.

Syringe commands are quite easy to make.

Syringe Commands

To create a syringe commands file open notepad and add commands keeping this in mind:

Commands are separated with ";" and the parameters by "," and the first parameter is the function name.

After adding the commands save the file as "Codes.syr" at the application's directory.

The current Syringe commands are:

Injectfoldertoroot: 2 Parameters : MPQ: war3/war3x,Folder Name: Name of the folder you want to inject, the folder (Or at least one of its parents) must be placed in the application's directory

Injects folder to root of selected Mpq

Example:
Code:
[color="white"]Injectfoldertoroot,war3,TestFolder[/color]

Injectfolder: 3 Parameters : MPQ: war3/war3x,Folder Name: Name of the folder you want to inject the folder (Or at least one of its parents) must be placed in the application's directory, Path: Select the path you want the folder to be added to in the selected MPQ Example: "MyTestPath\" Leave the path empty if you want to folder to be added to root

Injects folder to the chosen path of selected Mpq

Example:
Code:
[color="white"]Injectfolder,war3,TestFolder,MyTestPath\[/color]

Injectfile: 3 Parameters : MPQ: war3/war3x,File name: Name of the file you want to inject extension should be included, Path: Select the path you want the file to be added to in the selected MPQ Example: "MyTestPath\" Leave the path empty if you want to file to be added to root

Injects file to the chosen path of selected Mpq

Example:
Code:
[color="white"]Injectfile,war3,Bob.mdx,MyTestPath\[/color]

Injectfoldertoroottemp: 2 Parameters : MPQ: war3/war3x,Folder Name: Name of the folder you want to inject, the folder (Or at least one of its parents) must be placed in the application's directory

Temporarily injects folder to root of selected Mpq

Files are removed next time Syringe is run

Example:
Code:
[color="white"]Injectfoldertoroottemp,war3,TestFolder[/color]

Injectfoldertemp: 3 Parameters : MPQ: war3/war3x,Folder Name: Name of the folder you want to inject the folder (Or at least one of its parents) must be placed in the application's directory, Path: Select the path you want the folder to be added to in the selected MPQ Example: "MyTestPath\" Leave the path empty if you want to folder to be added to root

Temporarily injects folder to root of selected Mpq

Files are removed next time Syringe is run

Example:
Code:
[color="white"]Injectfoldertemp,war3,TestFolder,MyTestPath\[/color]

Injectfiletemp: 3 Parameters : MPQ: war3/war3x,File name: Name of the file you want to inject extension should be included, Path: Select the path you want the file to be added to in the selected MPQ Example: "MyTestPath\" Leave the path empty if you want to file to be added to root

Temporarily injects file to the chosen path of selected Mpq

Files are removed next time Syringe is run

Example:
Code:
[color="white"]Injectfiletemp,war3,Bob.mdx,MyTestPath\[/color]

Print: 1 Parameters : Text: The text that is displayed in the console.

Displays the text in the syringe console.

Example:
Code:
[color="white"]Print,Helloworld![/color]

Printline: 1 Parameters : Text: The text that is displayed in the console.

Displays the text in the syringe console on a new line.

Example:
Code:
[color="white"]Printline,Helloworld![/color]


Wait: 1 Parameters : Time: The time that syringe is going to wait, Unit is ms (Millisecond)

Waits for the selected time.

Example:
Code:
[color="white"]Wait,200[/color]

Requirements

.Net 3.5 (Download)


Downloads


Please download the latest version from Here


Bugs and Suggestions

Please report any encountered bugs.

Suggestions are as always welcome.

Problems

If you encountered a problem with this program please post here about it so that it will be solved.

Your post should be detailed and include information about the error and your commands, a screenshot of the error is appreciated.

The commands you entered should also be entered in the post

Problems without enough details will be IGNORED


Syringe at Tools




 
Last edited:
Level 6
Joined
Jul 3, 2014
Messages
1,280
That sounds counter-productive :\

unless... Syringe could be used for creating MPQs for mods?

I could add the temporary mode though.

It can be used to add the files a mod uses to an MPQ, which lowers the size of the mod as the mod wouldn't have to provide a pre-made MPQ (Which would include Warcraft III's files too).
 
Level 6
Joined
Jul 3, 2014
Messages
1,280
Syringe is almost complete, temporary files are supported as well.

Edit: Syringe will be added to the Tools section later.

Edit2: It's released by the way, download's available, read Syringe's commands (first post) to learn how to use Syringe for your mods.
 
Last edited:
Level 6
Joined
Jul 3, 2014
Messages
1,280
Why should we use this over a normal MPQ editor?

It is not created to be used as an MPQ editor.

Using syringe you can create some kind of "installer" with it.

For example you can give syringe with its codes.syr and (along with your mpq files) to the user and it will install it on their MPQ.

Edit: It can be also used to run when your mod runs, it can temporarily add files.
 

Ardenian

A

Ardenian

Will this tool allow you to easily add and remove files ?
For example, if I have a map using this injector for the war3 mpq, would I add a simple file pack and saying 'use this with the injector to add the files to your Warcraft mpq' ?

This would prove quite handy, no imports are needed anymore, drastically decreasing file size of maps, offering unlimited possibilities. If this supports file addition with a few clicks then I foresee a great future.
 
Level 6
Joined
Jul 3, 2014
Messages
1,280
Will this tool allow you to easily add and remove files ?
For example, if I have a map using this injector for the war3 mpq, would I add a simple file pack and saying 'use this with the injector to add the files to your Warcraft mpq' ?

This would prove quite handy, no imports are needed anymore, drastically decreasing file size of maps, offering unlimited possibilities. If this supports file addition with a few clicks then I foresee a great future.

Yes, though remove function is not added yet but you can use the "temp" commands for the files to be removed afterwards.

You put the files in the archive (at the same directory with syringe) and simply add "codes.syr" with a command like: "Injectfolder,war3,TestFolder,MyTestPath\", and syringe will do the rest.

I'm planning to make a syringe command editor, it may be either with clicks or an editor.

I will add more commands like startgame,removefile and improve the temporary files system.

The temporary systems needs to be improved, since currently the temporary files will only be removed when the syringe is re-opened.

In the next version, game will be run automatically (In this case removing startgame command) and when closed, syringe will remove the temporary files.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,199
This will highly likely get you banned from BattleNet as Warden should be checking the integrity of files periodically. Sure it does not check all of a file (too demanding) but random chunks of the file and various file metrics might be checked which is all it needs to flag a cd key up for banning.

No matter what people say this is detectable, even in custom games, on BattleNet and could lead to a CDKey ban. If Blizzard cares enough about WC3 to ban you is another question.
 
Level 6
Joined
Jul 3, 2014
Messages
1,280
This will highly likely get you banned from BattleNet as Warden should be checking the integrity of files periodically. Sure it does not check all of a file (too demanding) but random chunks of the file and various file metrics might be checked which is all it needs to flag a cd key up for banning.

No matter what people say this is detectable, even in custom games, on BattleNet and could lead to a CDKey ban. If Blizzard cares enough about WC3 to ban you is another question.

I guess your right, i did not take this to account.

It can still be used for mods though?

I will modify the first post about maps
 
Level 6
Joined
Jul 3, 2014
Messages
1,280
Syringe already does that.

When syringe is run for the first time, syringe backups the user's mpqs.

It restores them the next time it is run, the permanent commands modify the backuped mpqs while the temporary commands modify the ones at the game directory thus being removed later.

In the new version (WIP), syringe mounts the game once its launched (automatically when syringe finished running its commands) and restores the backuped mpqs once the game is closed.
 
Level 25
Joined
Feb 2, 2006
Messages
1,689
With MPQDraft I can create a "Frozen Throne.exe" which starts Warcraft III: The Frozen Throne and contains a custom MPQ archive.
Therefore the specified MPQ archive is loaded when starting Frozen Throne and you can replace data. This allows you to create a real modification and exceed the 8 MiByte limit which I do for my modification.

There might be additional features with patches I do not use. The tool works for Starcraft and Diablo too.

It's only for MAC on hiveworkshop but on other websites I have downloaded the Windows version, so it works on Windows, too. Check out the custom EXE here: http://wc3lib.org/mods.html
 
Level 6
Joined
Jul 3, 2014
Messages
1,280
With MPQDraft I can create a "Frozen Throne.exe" which starts Warcraft III: The Frozen Throne and contains a custom MPQ archive.
Therefore the specified MPQ archive is loaded when starting Frozen Throne and you can replace data. This allows you to create a real modification and exceed the 8 MiByte limit which I do for my modification.

There might be additional features with patches I do not use. The tool works for Starcraft and Diablo too.

It's only for MAC on hiveworkshop but on other websites I have downloaded the Windows version, so it works on Windows, too. Check out the custom EXE here: http://wc3lib.org/mods.html

Well, syringe does the same then.

Other than the temporary commands.

Edit: New version uploaded and added to tools.

Changes:

Syringe detects when game exits.

Edit: A Syringe editor is currently in development, project is NOT dead.

Edit2: I figured that an update is more necessary than an editor, currently the temporary files system is improved , more features are being added such as writing text on syringe's console.

Stay tuned for more updates.

Edit3: Wait command added, to help display text before the game is run or any other purpose.

I may just upload it today.

Edit4: Application and tutorial updated.
 
Last edited:
Status
Not open for further replies.
Top