Jump to content

Safe Storage Mod


nolanri

Recommended Posts

SafeStorage1.png
Description:

Adds a metal Safe to the game. The safe can be crafted with level 9 Carpentry, 4 sheets of metal, 25 screws, Crowbar and a hammer. Or it can be found in crates in all areas.
The safe is a normal container item when you first find or craft it. So fill it with items. Then from the inventory menu right click and choose lock safe. The safe will then be locked and anchored to the ground and you will get a key in your inventory that can be used to unlock it. The anchored safe is impossible to destroy or steal for any normal player, they will not even be able to see whats inside. So your items are now safe. Just don't lose your key.

 

http://undeniable.info/pz/SafeStorageMod.php

 


Now with a combination lock safe. 5 digit combination lock. Can use a different lock code each time you lock it. You must right click on the outer locked safe to unlock it, not the inner caps lock saying COMBINATION LOCKED. First click on ground tile then right click safe to enter combination to unlock
 


Now a player with the Burglar Profession can Crack open safes with a Crowbar, Screwdriver and Hammer. But he must have at least 4 Sneaking points. Each Attempt to crack the safe takes a while, and is not guaranteed to work. Though only your time is lost with repeated failed attempts. Higher level sneaking has a better chance to crack the safe each attempt.

 

Edited by nolanri
updates
Link to comment
Share on other sites

-----------------------------------------
STACK TRACE
-----------------------------------------
Callframe at: get
function: removeNoResults -- file: SafeStorage.lua line # 47
function: UnLockSafe -- file: SafeStorage.lua line # 149
Callframe at: PerformMakeItem
function: perform -- file: ISCraftAction.lua line # 44
java.lang.reflect.InvocationTargetException
    at sun.reflect.GeneratedMethodAccessor30.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at se.krka.kahlua.integration.expose.caller.MethodCaller.call(MethodCaller.java:61)
    at se.krka.kahlua.integration.expose.LuaJavaInvoker.call(LuaJavaInvoker.java:199)
    at se.krka.kahlua.integration.expose.LuaJavaInvoker.call(LuaJavaInvoker.java:189)
    at se.krka.kahlua.vm.KahluaThread.callJava(KahluaThread.java:182)
    at se.krka.kahlua.vm.KahluaThread.luaMainloop(KahluaThread.java:983)
    at se.krka.kahlua.vm.KahluaThread.call(KahluaThread.java:163)
    at se.krka.kahlua.vm.KahluaThread.pcall(KahluaThread.java:1727)
    at se.krka.kahlua.vm.KahluaThread.pcall(KahluaThread.java:1642)
    at se.krka.kahlua.integration.LuaCaller.pcall(LuaCaller.java:63)
    at se.krka.kahlua.integration.LuaCaller.protectedCall(LuaCaller.java:77)
    at zombie.inventory.RecipeManager.PerformMakeItem(RecipeManager.java:1022)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at se.krka.kahlua.integration.expose.caller.MethodCaller.call(MethodCaller.java:61)
    at se.krka.kahlua.integration.expose.LuaJavaInvoker.call(LuaJavaInvoker.java:199)
    at se.krka.kahlua.integration.expose.LuaJavaInvoker.call(LuaJavaInvoker.java:189)
    at se.krka.kahlua.vm.KahluaThread.callJava(KahluaThread.java:182)
    at se.krka.kahlua.vm.KahluaThread.luaMainloop(KahluaThread.java:983)
    at se.krka.kahlua.vm.KahluaThread.call(KahluaThread.java:163)
    at se.krka.kahlua.vm.KahluaThread.pcall(KahluaThread.java:1727)
    at se.krka.kahlua.vm.KahluaThread.pcall(KahluaThread.java:1642)
    at se.krka.kahlua.integration.LuaCaller.pcall(LuaCaller.java:72)
    at zombie.characters.CharacterTimedActions.LuaTimedActionNew.perform(LuaTimedActionNew.java:77)
    at zombie.characters.IsoGameCharacter.update(IsoGameCharacter.java:9519)
    at zombie.characters.IsoPlayer.update(IsoPlayer.java:2642)
    at zombie.iso.IsoCell.ProcessObjects(IsoCell.java:1353)
    at zombie.iso.IsoCell.update(IsoCell.java:4659)
    at zombie.iso.IsoWorld.update(IsoWorld.java:2534)
    at zombie.gameStates.IngameState.update(IngameState.java:1273)
    at zombie.gameStates.GameStateMachine.update(GameStateMachine.java:101)
    at zombie.GameWindow.logic(GameWindow.java:630)
    at zombie.GameWindow.run(GameWindow.java:1233)
    at zombie.GameWindow.maina(GameWindow.java:1015)
    at zombie.gameStates.MainScreenState.main(MainScreenState.java:177)
Caused by: java.lang.IndexOutOfBoundsException: Index: 1, Size: 1
    at java.util.ArrayList.rangeCheck(ArrayList.java:604)
    at java.util.ArrayList.get(ArrayList.java:382)
    ... 39 more

Link to comment
Share on other sites

I've been using on my server for the last week and the only "complaints" I have so far are:

 

1 - "No result" item after locking a safe (I've accumulated quite a few of these already)

2 - Both the lock and combination safes are moving sideways and forward every time I lock them.

 

But overall, great mod! Thank you!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...