Money Making and Merchanting

In Hack Wars a player interested in merchanting has several options available to them: you can compile scripts and upload them to your store, you can become a wholesaler for other players, you can purchase and resell firewalls, you can even become a reseller of the rare secret images hidden throughout Hack Wars. As you make profits and deposit the money into your bank, you will increase your merchanting skill. A high merchanting skill allows you to create new banking scripts using more powerful API functions. These allow you to cut down on banking service charges, and to forge more powerful malicious scripts. A high-level merchant also receives a discount when purchasing items from stores.

Hack Wars allows players to gain money in many ways, including:

Daily Pay

Your daily pay is income you receive for maintaining an active website. To receive your daily pay, you must have active HTTP and Banking ports. You receive $750 to your petty cash and a guaranteed $250 directly into your bank every 12 hours. The time at which this occurs is variable and depends on the last time your account was accessed by you or other players.
If you attack an HTTP port, an option comes up to redirect your opponent’s daily pay (that is, the $750 which is not guaranteed income). If your pay is being redirected to another player, replace your HTTP script. A basic HTTP script is available in the Hack Wars Store. Your daily pay increases with your HTTP level.

Gainful Attacks

Petty Cash Attacks

Attacking an opponent’s Bank port (either a real player or an NPC) gives you the option of emptying their Petty Cash.
The amount of money in an NPC’s petty cash depends on their difficulty and regenerates with each new attack. Currently the easiest NPCs to defeat are the Dorothy’s, which can be searched through the web browser using keywords from The Wizard of Oz. Dorothy’s keep $60 on hand at all times.

Public FTP Attacks

Attacking an opponent’s FTP port gives you the option of stealing a file from their public FTP directory. These files can be resold at a profit, either through your own store, or to the game store at a fixed price.
NPC’s drop a random file from a drop table ranging from Low to Rare quality. These drops can potentially be worth hundreds of thousands of dollars in compiling costs and allow you to use functions well beyond your current level.

Making Money with Game Stores

Your Store

Your store is part of your website. To keep your store open, you must have active FTP, HTTP and Banking ports. Compiled programs, images, and firewalls can be uploaded to your store. These you may have created yourself or stolen from other players or NPCs.

Your files are uploaded to your store using Shop FTP, under Places. Prior to uploading to your store, file descriptions and pricing must be set in the File Browser, also in Places. The price you set is the price for a player with level 50 Merchanting. Someone with level 1 Merchanting will pay approximately 50% more, whereas someone with level 100 Merchanting will pay about 50% less. When a player buys a file from your store, the money goes into your Petty Cash, making defense very important—a high-level Watcher will have the ability to make automatic deposits to their Bank, allowing for a secure Shop.

The price and description of your file must be set prior to uploading to your Store. Uploading multiple copies of a file is allowed; all copies of the file will have the same price and description, and players may choose to purchase multiple copies. If you upload copies of the same file with a new price and description, all copies of the file in your store will take on the price and description of the file most recently uploaded.

Reselling programs bought from the game store can be lucrative, as the game store restricts sales to lower-level players. Player stores do not maintain the level requirement for purchases, allowing for profitable resales.

http://www.plink-search.com

In the above screen shot, the Price of a file is highlighted in red, along with the button that allows you to edit the Price. The Description is highlighted in Green. The button highlighted in Blue allows a player to sell a file to the game store (only NPC drops can be sold back to the game store).

Selling Files to the Game Store

You can sell files from NPC drops back to the game store at a set price. This price is less than the compile cost of the file.

Installing Malicious Programs

Hack Wars encourages the player to program their own scripts to use against opponents. Some of these scripts may be used maliciously for financial gain. One approach is to install a malicious application over an opponent’s Banking application.

Banking:
Creating a malicious deposit or withdraw script can redirect the funds of an opponent’s money transfer. A malicious deposit could redirect money to your bank account instead of your opponent’s; a malicious withdrawal redirects the opponent’s money to your petty cash.
The following sample program redirects 5% of an opponent’s Bank deposits to your Bank. Functional withdrawal and transfer scripts lower the risk of detection of your malicious installation:

In deposit:


float amount=getAmount();
float giveAmount=amount*0.95;
float stealAmount=amount*0.05;
string yourIP="xxx.xxx.x.xxx";
lowerDeposit(yourIP,stealAmount);
lowerDeposit(getSourceIP(),giveAmount); 

In withdraw:


withdraw(getSourceIP(),getAmount()); 

In transfer:


lowerTransfer(getTargetIP(),getAmount()); 


FTP:
A malicious FTP program could be used to steal files as an opponent attempts to upload the file to their Public FTP or Shop FTP directories. If written intelligently, this could be a way to acquire valuable files.

The following sample program steals a secret image from an opponent when they attempt to upload it to either the Public or Shop FTP:

In put:


if(equal(getFileType(),"image")){
  put(getMaliciousIP());//You set this when you select 
                        //the script as one of your attack parameters.
}else{
  put(getTargetIP());
} 

In get:



if(equal(getFileType(),"image")){
  put(getMaliciousIP());//You set this when you select 
                        //the script as one of your attack parameters.
}else{
  put(getTargetIP());
}