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

Advanced bank system (MPI)v2.4.2

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
Well after a long time no see i came to this old junk and "tweaked" it a little bit.
Now every action is set via multiboard, as you can see in the picture(Not Updated since v2.3).
Enjoy, comment, criticize, rep.


Plans for v2.5:
-Fixing bug between switching multiboards, when switched, instant action is started.
-Continues moving down or up, don't need to press buttons over and over.
-Adding more loops to shorten the trigger functions.
-Will try to remove few variables.
-Planning to make tutorials how to make new multiboards to this system.
-Tutorial how to add/remove functions.
-Finally adding barrow function.
-Going to change the style of multiboards, now you will select either to select bank or item multiboard from the start.
-MAYBE adding more features.
-MAYBE adding new multiboard.


v2.4.2
-Now you can not only you can withdraw less amount then 100/500 but also deposit.
-Added documentation to "custom amount trigger".
-Removed one useless image from Item Storing multiboard.

v2.4.1
-Reduced Item Store trigger functions, now there 4 times smaller.
-Added 4 more item slots(10 in total).
-Item Storing should work faster now.
-Fixed few bugs and corrected few mistakes.

v2.4
-Finally added new feature, now you can store items in the bank system.
-Added another multiboard.
-Reduced few trigger functions, now the coding takes a bit less lines with new feature.
-Removed all the bugs that could find.

v2.3:
-Reduced selection options by half now instead of 13 options you have 7 of them.
-Added the rest of the players in Event when entering custom amount, forgot to do that earlier.
-Fixed few spelling mistakes and minor bugs.
-Changed shortcuts for the system (their explained in the loading screen and in game).

v2.2:
-Fixed pausing unit, now you won't wont get bugged when you have more then one unit.
-Removed annoying messages.
-Fixed bug when you exit the bank you still initiate the last order.
-Added new option, now you can disable messages.
-Simplified "How to import" now its more detailed an more user friendly.

v2.1:
-Added 2 more options, now you can deposit/withdraw custom amount of gold.
-Now it plays sound and shows effect after depositing/withdrawing(useless huh? ;D)

v2.0
-Spent 2hours rebuilding the system.

v1.0
-Can't believe that I had that much of free time to even create system like that.



Bank System.v2.4
[+]It's the most accurate depositing/withdrawing bank system.
[+]First of its kind.
[+]MPI
[+]No need of any abilities,editing units nothing.
[+]Triggers user friendly.
[+]Description is user friendly.
[+]Now it takes less time to deposit/withdraw then ever before.
[+]Easy to transfer from map to map.

Item Store System.v1.1
[+]Very accurate storing and taking item system.
[+]Searches every inventory slot till find item and stores it.
[+]If unit doesn't have needed space in hes inventory, system moves item next to the unit.
[+]Pretty much the most advanced item storing system.


With this system you can deposit/withdraw as much gold as you enter in
the
chat string.
[+] You can withdraw/deposit XXX number to your bank account.
[+] No need of any abilities or custom units.
[+] More accurate when depositing/withdrawing.
[+] MPI - multi player instanceable.

[-] Takes kinda much time to deposit/withdraw.
[-] Needs a region.

Future updates:
[ ]1. Lending - Bank lends money to player for a time period x money lend.
[ ]2. Income - Some % that you gain to your bank account depending to the amount in it.
[ ]3. Bank fee - % of money lost after depositing due to fee.
[ ]4. Withdraw fee - % of money lost after withdrawing due to fee.
[ ]5. Bank share - Two or more people can use same bank account.

Comments are welcome.
This is original version of this bank system.


Keywords:
bank, bank system, deposit, withdraw, account, advanced, multi, board, multiboard, custom, arrows, keys, easy, fast, best.
Contents

Wohuynia's Bank System v2.4.2 (Map)

Reviews
12th Dec 2015 IcemanBo: Too long time as NeedsFix. Rejected. 15:59, 27th Aug 2009 hvo-busterkomo: Rejected for not being MUI.

Moderator

M

Moderator

12th Dec 2015
IcemanBo: Too long time as NeedsFix. Rejected.

15:59, 27th Aug 2009
hvo-busterkomo: Rejected for not being MUI.
 
My Review

Well here is my review:

This is a VERY simple system but thats exactly what we all started from :wink:

the gui triggering is not mpi and not very efficient...
it would be too long to list all your mistakes here so i put some of them here in hidden tags...
keep it on and it will be useful but till now 2/5

the following is my suggestion and not ment to attack you only to help you:thumbs_up:

list of things to improve:
- make it mpi (multi player instanceable: every player has one account)
- use arrays for that
- get rid of that "random unit from..." use a unit variable with array 12 so that each player has his bank unit stored...
- remove the bank unit completly:grin: its useless cause banking systems are most used in TDs or something like that...
- learn about array variables !!!
- learn about leaks
- the special effects are not very usefull and their leaks arent removed

here are some examples for improvement
(all freehand so the actions can be a little different in WE)

  • Set Amount = (Integer((Substring((EnteredChatString(7,11))))
should be
  • Set Amount = (Integer((Substring((EnteredChatString(7,GetStringLength(EnteredChatString))))
to make players able to withdraw/deposit even higher values than 99999...

  • Player- Set .... gold to ... current gold + Substring(..)
why the hell do you do that??? you set the BankAcc variable to that value already so you can insert it:
  • Player- Set .... gold to (BankAcc)
The Triggers "unit leaves bank booth" and "unit enters bank booth" are completly useless! they can be merged into the bank in trigger AND the "Bank in" and the "bank out" triggers can be also merged into one.
This is how the new trigger in MPI should (nearly) look like
  • Merged Trigger
  • Events:
    • Player 1 types a chat message containing bank as a string part
    • Player 2 types a chat message containing bank as a string part
    • ...
  • Conditions:
  • Actions:
    • Set Amount = (Integer((Substring((EnteredChatString(7,GetStringLength(EnteredChatString))))
    • If
      • Substring(EnteredChatString(1,6) = "-bank"
    • Then
      • Set BankAcc[PlayerNumber(TriggeringPlayer)] = BankAcc[PlayerNumber(TriggeringPlayer)] + Amount
      • Set Triggering Players gold to BankAcc[PlayerNumber(TriggeringPlayer)]
      • Set Triggering Players wood to (Triggering Players wood - Amount)
      • Display to Player(PlayerNumber(Triggering Player)) the text " --your withdraw message here-- "
    • If
      • Substring(EnteredChatString(1,6) = "+bank"
      • Triggering Player gold >= Amount
    • Then
      • Set BankAcc[PlayerNumber(TriggeringPlayer)] = BankAcc[PlayerNumber(TriggeringPlayer)] - Amount
      • Set Triggering Players gold to BankAcc[PlayerNumber(TriggeringPlayer)]
      • Set Triggering Players wood to (Triggering Players wood + Amount)
      • Display to Player(PlayerNumber(Triggering Player)) the text " --your deposit message here-- "
Note: A new review is released, based on the newest version!
 
Last edited:
Level 7
Joined
Dec 9, 2008
Messages
114
list of things to improve:
- make it mpi (multi player instanceable: every player has one account)
- use arrays for that
- get rid of that "random unit from..." use a unit variable with array 12 so that each player has his bank unit stored...
- remove the bank unit completly its useless cause banking systems are most used in TDs or something like that...
- learn about array variables !!!
- learn about leaks
- the special effects are not very usefull and their leaks arent removed

i know about arrays xD i just copy/pasted the trigger from my solo RPG map so thats why its not mpi.

Special effects: i added them just for show, even in TD maps people will add them( i can bet on that) xD yet i will get rid of them.

  • Set Amount = (Integer((Substring((EnteredChatString(7,11))))
should be
  • Set Amount = (Integer((Substring((EnteredChatString(7,GetStringLength(EnteredChatString))))
to make players able to withdraw/deposit even higher values than 99999...
didn't knew about this "GetStringLength" il fix this.


  • Player- Set .... gold to ... current gold + Substring(..)
why the hell do you do that??? you set the BankAcc variable to that value already so you can insert it:
  • Player- Set .... gold to (BankAcc)
don't you mean Amount variable instead of BankAcc? Still got the idea, fixed it.


The Triggers "unit leaves bank booth" and "unit enters bank booth" are completly useless! they can be merged into the bank in trigger AND the "Bank in" and the "bank out" triggers can be also merged into one.
This is how the new trigger in MPI should (nearly) look like
Merged Trigger
  • Events:
  • Player 1 types a chat message containing bank as a string part
  • Player 2 types a chat message containing bank as a string part
  • ...
  • Conditions:
  • Actions:
  • Set Amount = (Integer((Substring((EnteredChatString(7,GetStringLength(EnteredChatString))))
  • If
  • Substring(EnteredChatString(1,6) = "-bank"
  • Then
  • Set BankAcc[PlayerNumber(TriggeringPlayer)] = BankAcc[PlayerNumber(TriggeringPlayer)] + Amount
  • Set Triggering Players gold to BankAcc[PlayerNumber(TriggeringPlayer)]
  • Set Triggering Players wood to (Triggering Players wood - Amount)
  • Display to Player(PlayerNumber(Triggering Player)) the text " --your withdraw message here-- "
  • If
  • Substring(EnteredChatString(1,6) = "+bank"
  • Triggering Player gold >= Amount
  • Then
  • Set BankAcc[PlayerNumber(TriggeringPlayer)] = BankAcc[PlayerNumber(TriggeringPlayer)] - Amount
  • Set Triggering Players gold to BankAcc[PlayerNumber(TriggeringPlayer)]
  • Set Triggering Players wood to (Triggering Players wood + Amount)
  • Display to Player(PlayerNumber(Triggering Player)) the text " --your deposit message here-- "
i wanna make more RPG bank system, that NEEDS bank booth to deposit gold xD plus it leaks, don't see mistakes, did what told me to do but still it leaks xD so ima stick to the old 1. Still thanx thou


thanx for all advices, corrected all the things i wanted, to correct xD found out new things xD
 
Last edited:
Level 10
Joined
Aug 19, 2008
Messages
491
Shouldn't systems be a bit less specific and have a bit more options?
I mean, the user should be able to design weather or not he wish to use a chat string, click a command button or walk into different circles.

Maybe something like
  • Events
    • Unit - Something happens
  • Conditions
    • Something is less than/more than/equal to something
  • Actions
    • Set Bank___AddAmount = 1,000,000 //1 million gold!
    • Trigger - Run BankAddAmount <gen> Checking conditions
Maybe even add options to make it a 'real' bank, where you lend money to the bank and it gives you money every month (or second) depending on how much you've lend, and when you borrow money from the bank it will instead take money?
And only the sum of all money in the bank's deposits are avilable for lending/borrowing?

Just some thoughts I think would greatly increase the quality of this system.
 
Level 7
Joined
Dec 9, 2008
Messages
114
Shouldn't systems be a bit less specific and have a bit more options?
I mean, the user should be able to design weather or not he wish to use a chat string, click a command button or walk into different circles.

Maybe something like
  • Events
    • Unit - Something happens
  • Conditions
    • Something is less than/more than/equal to something
  • Actions
    • Set Bank___AddAmount = 1,000,000 //1 million gold!
    • Trigger - Run BankAddAmount <gen> Checking conditions
Maybe even add options to make it a 'real' bank, where you lend money to the bank and it gives you money every month (or second) depending on how much you've lend, and when you borrow money from the bank it will instead take money?
And only the sum of all money in the bank's deposits are avilable for lending/borrowing?

Just some thoughts I think would greatly increase the quality of this system.

I like this idea, i will do this after mah drinking week xD:razz:
 
Review

Review of version : 2.1
Idea

Well we have bank systems here but this one has a lot more improved functions...

4/5
Coding

A nice multiboard with good visuals without the use of imported stuff is something great!
Coding has improved a lot from the last version i reviewed! i see no leaks or faults ;)

1. A singe space between "Account:" and your money so "Account:500" becomes "Account: 500"

2. A message when you reached the top or bottom of the list is not necessary and a little annoying

3.You can't withdraw 500 if you have less than 500 in your bank... maybe change that so if you have less than 500 you simply withdraw all!

4. pause AND stop the unit that enters a bank, cause when you quit it the unit runs on...

5. If i entered a bank with a unit and then come in range with another unit my old one is never unpaused... maybe check on enter whether there is already a unit in the bank

6. add a boolean whether all those messages should be shown!


4/5
Documentation



The documentation for how to import and how to set up could be better ;)
3/5
Result

If your current version is 2.1 then please don't name your map "Bank System v2.0" :D
Improve my suggestions in the coding section and update your documentation to have a really good system!

Overall: (4+4+3)/3 = 3.6 ==> 4
Vote for Approval: [Not able to Vote but would be a yes]
+rep: No
PM me when you want me to look over your ressource again


A new review for a newer version is posted!!
 
Last edited:
Level 7
Joined
Dec 9, 2008
Messages
114
Thank you Wicher, for your review.

I have updated it.
Code:
Updates:
v2.2:
Fixed pausing unit, now you won't wont get bugged when you have more then one unit.
Removed annoying messages.
Fixed bug when you exit the bank you still initiate the last order.
Added new option, now you can disable messages.
Simplified "How to import" now its more detailed an more user friendly.


1. A singe space between "Account:" and your money so "Account:500" becomes "Account: 500". Fixed it easy as pie ;D

2. A message when you reached the top or bottom of the list is not necessary and a little annoying. Fixed it, it was annoying to me to, but though it was useful, no more of it.

3.You can't withdraw 500 if you have less than 500 in your bank... maybe change that so if you have less than 500 you simply withdraw all! Fixed it, now you can deposit/withdraw if less then 500/100 gold, all the amount of gold that you have.

4. pause AND stop the unit that enters a bank, cause when you quit it the unit runs on... Fixed it.

5. If i entered a bank with a unit and then come in range with another unit my old one is never unpaused... maybe check on enter whether there is already a unit in the bank. Fixed it, now it pauses all the units owned by triggering player.

6. add a boolean whether all those messages should be shown! Fixed it with new option.

In future ill continue making more options to this Bank System.
Off Topic:
Next project, storing items to the bank.
 
Last edited:
Level 20
Joined
Jul 12, 2010
Messages
1,717
In future ill continue making more options to this Bank System.
Off Topic:
Next project, storing items to the bank.

awesome idea man !!
and i got an idea for the storing items system ;p
for example..
you can store in bank 10 items at most
and you can buy 1 extra slot for about 100 gold each (depends on you ;p)
can't wait for the item storing system !! :thumbs_up:
 
Level 7
Joined
Dec 9, 2008
Messages
114
awesome idea man !!
and i got an idea for the storing items system ;p
for example..
you can store in bank 10 items at most
and you can buy 1 extra slot for about 100 gold each (depends on you ;p)
can't wait for the item storing system !!
Well in version 2.4 i added "store items system" i wont do your suggestion, because to store 1 item it takes 66 GUI lines, it will stay this way till ill figure out how to reduce the size of trigger functions that check every single inventory slot.
But till now i want to take break from triggering.
Now enjoy new version with mass coding (462 GUI lines just to store and take 6 items):D:vw_unimpressed:
 
Level 7
Joined
Dec 9, 2008
Messages
114
New version came.


v2.4.1
-Reduced Item Store trigger functions, now there 4 times smaller.
-Added 4 more item slots(10 in total).
-Item Storing should work faster now.

Now with new updates, GUI lines with added 4 new slots still takes 2 times less space, so that's a MAJOR plus, works faster and still is as accurate as it was.

Sorry for double posting -.-
If someone could delete first post i would post my update log there, thank you.
 
Review

Review of version : 2.4.1
Idea

We have bank systems here but this one has a lot more improved functions...
In addition none of these systems is able to store items!

5/5
Coding

Coding is better now but there are still some things xD

1. you still can't use deposit 500 when you have less than 500 gold... change that so you simply deposit all when you have less than 500!
2. when switching to the item storage, the first multiboard line is just a "headline"... maybe it's better to remove the point image before this line and make it not selectable cause there is no use for it!
3. Merge your item actions... creating a new condition for each row can be done easier by using a loop for example!
4. i saw no hint how to set the custom amount until i opened the map in WE :D add one please or even better, add a new line in the multiboard below the custom amount line where you can increase/decrease the custom amount, using left and right ;)


4/5
Documentation

There is a explanation for each line or each bundle of actions so you can understand the whole system even as a noob!

4/5
Result

A lot of improvement, but there are still some things as mentioned above ;) for a 5/5 rating, the code has to be more efficent (better merging of actions), and to be more user friendly, constants for the withdraw amounts would be great! so a user sets AMOUNT_A = 1000 and your code would use this constant for the multiboard texts and so on!

Overall: (5+4+4)/3 = 4.3 ==> 4
Vote for Approval: [Not able to Vote but would be a yes]
+rep: No
PM me when you want me to look over your ressource again
 
Level 20
Joined
Jul 12, 2010
Messages
1,717
Well in version 2.4 i added "store items system" i wont do your suggestion, because to store 1 item it takes 66 GUI lines, it will stay this way till ill figure out how to reduce the size of trigger functions that check every single inventory slot.
But till now i want to take break from triggering.
Now enjoy new version with mass coding (462 GUI lines just to store and take 6 items):D:vw_unimpressed:

66 GUI lines for 1 item eh? what a pain in the butt lol
oh well this system is still great :thumbs_up:
 
Top