Garry's Mod

Garry's Mod

159 个评价
Sandbox Weapon Shop and Money System
   
奖励
收藏
已收藏
取消收藏
素材类型: 插件
插件类型: 实体
插件标签: 快乐, 角色扮演
文件大小
发表于
更新日期
887.820 KB
2024 年 11 月 26 日 下午 9:12
9 月 8 日 上午 4:10
4 项改动说明 ( 查看 )

订阅以下载
Sandbox Weapon Shop and Money System

描述
WARNING: MODIFIED NPCS LIKELY DO NOT WORK.

NPCs which rely on setting attributes for existing NPCs (case: `npc_rollermine_friendly`, `npc_rollermine_hacked`, and `npc_turret_floor_resistance`) WILL NOT WORK with this addon. GMOD does something weird when spawning these so the addon cannot properly replicate the changes. Until I figure out what GMOD does to make these work, those NPCs will not function with the addon.

Any further comments regarding NPCs not spawning will be deleted; please post details on the Github [listed at the bottom] instead of here. This helps identify what other NPCs are potentially broken.

A fun little script to make weapons worth getting by buying through hard earned blood money.

FAQ is here.

Please read the FAQ before posting a comment on this workshop; posts that do not follow this simple request will be removed starting April 2nd, 2025.

Features:
Money System
- You Kill, You earn Money
- Dynamic money value given depending on how much HP an NPC has
- Works on 99.99% of NPCs (and hopefully most Workshop NPCs)
- Many configurations to adjust money gain (Spawnmenu -> Options -> Weshop Admin -> Money Options)
- Configuration Presets
- Option to split cash between players (Co-op Mode)
- Option to replace vanilla ammo with grabbable cash
- Option to replace vanilla Wall chargers and health chargers to become shops
- Option to disable pickups on vanilla weapons
- If you want to replace other entities with shop/money i suggest using the Total Replacer mod (Warning from Famous5000: This addon appears to be a little buggy, if it doesn't work on the server then report it to the addon dev)
- As Admins, you can reset all players cash to the start using wblmoney_resetallplayermoney command console
- Option to buy anywhere (If enabled, you can say "!wblbuy" in chat, or use the console command "wblbuy")
- and others!

Weapon/Entity Buying System
- Spend your hard earned cash on Weapons, ammunition and entities!
- Add your own weapons/entities or workshop SWEPS in the shop
- Organize weapons/entities in shop by adding them in categories
- Two weapons with the same "SlotID" will make it so only one of the weapons can be bought
- Option to disable pickup for same slot ID weapons
- Add Weapon list Presets and create your own weapon shop list
- Quickly edit ammo and weapons in the list by right clicking to open context menu
- Quick add option uses an algorithm to do the setup for you (about 90% correct setup)
- Use "wblmoney_showsuggestedprice" to see suggested price of your currently held weapon

How to have fun with it:
Make your own weapon list. If you don't want to, wblack actually made a built-in preset for you to try:
Half-life 2 Tiered weapon list preset contains the following addons and must be subscribed to, so you can use it:
RTB:R Weapons Pack
Entropy: Zero 2 SWEPs
Entropy: Zero 2 Xen Grenade
ZBase EZ NPCs Content


After that, just go in game in gmod then open up the Spawnmenu -> Options -> Weshop Admin -> Shop Options
then select Half-life 2 Tiered under Weapon/Ammo List Preset.

Make the Weapon Shop entity under Spawnmenu -> entities -> Weshop

Get some profit by killing your enemies or friends!

Recommended to play with npc battle maps/scripts, here are some suggestion workshop mods to play with it:
Simple Horde Mode for Sandbox -- Famous5000 recommends; this addon is easy to configure and even allows for scaling battles.
gm_devbattle
Reinforcements System


The original developer (wblack) also made a guide in making it work in HL2 Campaign, check it out:
Play HL2 Campaign with Weapon Shops

Other useful mods:
Weapon: Setup, Transfer And Restore - Workshop If you get frustrated on losing your weapons (keep inventory)
Weapon Editor & Replacer for balancing/editing weapons
Alternate Model for Weapon Shop by Neeko
Customizable Entity Spawner after adding the shop entity on the list, should spawn around you
Modest Map Manipulator A mod that makes entities (like the weapon shop) to persist in maps

Go send donations to the original developer of this addon. You can also send me money via the second link if you choose to do so.
https://ko-fi.com/wblack57
https://ko-fi.com/famous5000

Legacy addon page: https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=3342435610

Note
- If you are using Manual pickup (i.e. Vmanip manual pickup), this will conflict with my "Disable All Vanilla Weapon Pickup" and "Disable pickup for same slot ID weapons" feature. Simply uncheck them in my option and manual pickup will work
- Inspired by Counter-Life, a half-life 1 mod you should try it!
- Most of this page is unedited from the legacy addon. Tried my best to replicate it.

!!! UNSTABLE BRANCH !!!
Github[github.com] for the addon. Changes on the GitHub will be ahead of this addon until I can confirm everything is stable. If you want a more up-to-date addon use the unstable one, but beware of bugs.
220 条留言
Famous5000  [作者] 12 月 2 日 下午 8:42 
Something I did add to the suggestions but haven't gotten around to doing yet.

Shouldn't be difficult, I'll see what I can do about implementing that once I get a free moment.
Scraplord7 12 月 2 日 下午 4:06 
can you add a command to pay a user? like !pay <Player> <Amount>?
Famous5000  [作者] 12 月 2 日 上午 8:10 
Technically yes.
Scraplord7 12 月 2 日 上午 5:05 
so could I do "player:SetPData("wblmoney",player:GetPData("wblmoney",0)+number)" to add to the amount?
Famous5000  [作者] 12 月 1 日 下午 10:22 
*oops*
the 2nd argument on the GetPData should be 0 because that's the default that's returned if no value is present

everything else I said on that comment is correct however
Scraplord7 12 月 1 日 下午 10:09 
alr, thanks for the clarification.
Famous5000  [作者] 12 月 1 日 下午 10:03 
But yeah multiple addons should support modifying the PData fields so it should be easy enough to set up support regardless of the addon you use.
Famous5000  [作者] 12 月 1 日 下午 10:03 
There is no specific function for that, you modify the player data store `wblmoney` [explained in a previous comment] via player:SetPData("wblmoney",newAmount), you can get it via player:GetPData("wblmoney",newAmount).

I should add that to the FAQ so it's easy to reference in the future.
Scraplord7 12 月 1 日 下午 8:27 
can you tell me what the lua function is to add money to a player? I'm trying to add a feature that gives a reward for joining my discord server in my gmod server.
Famous5000  [作者] 11 月 21 日 下午 1:38 
This one still uses the integrated money system and supports external modifications much easier for stuff like GMOD Blueprints, other than that I'm not sure what all has changed on the OG mod, since it was updated without communication to me.