Content: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Background: Slate Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate Marble
Pattern: Blank Waves Notes Sharp Wood Rockface Leather Honey Vertical Triangles
Welcome to TerraFirmaCraft Forums

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

  • Announcements

    • Dries007

      ATTENTION Forum Database Breach   03/04/2019

      There has been a breach of our database. Please make sure you change your password (use a password manager, like Lastpass).
      If you used this password anywhere else, change that too! The passwords themselves are stored hashed, but may old accounts still had old, insecure (by today's standards) hashes from back when they where created. This means they can be "cracked" more easily. Other leaked information includes: email, IP, account name.
      I'm trying my best to find out more and keep everyone up to date. Discord (http://invite.gg/TerraFirmaCraft) is the best option for up to date news and questions. I'm sorry for this, but the damage has been done. All I can do is try to make sure it doesn't happen again.
    • Claycorp

      This forum is now READ ONLY!   01/20/2020

      As of this post and forever into the future this forum has been put into READ ONLY MODE. There will be no new posts! A replacement is coming SoonTM . If you wish to stay up-to-date on whats going on or post your content. Please use the Discord or Sub-Reddit until the new forums are running.

      Any questions or comments can be directed to Claycorp on either platform.
Sign in to follow this  
Followers 0
sdbaynham

[Offline] F.M.P. - Highly-compatible Forge Server Mods

33 posts in this topic

Hey everyone, I've promised a few people that I'd be releasing my more-complete mods after build 48, and now build 48 seems to be nearly digested by the community, so now it's time to keep my promise. You all have probably heard a bit about my chest-logging mod ThiefTaker (although it probably won't live up to the hype). So here it is, for download, along with a couple other Forge MultiPlayer mods I've developed for DigHissBoom. I'm releasing them under CreativeCommons-Attribution License, which means you can modify them or use the decompiled code in other works, so long as you give me credit for what I did. You can attribute me under the name Stephen Baynham, or under the handle Slink730. I think it'd be cool to hear back about what you did with them, but I guess you don't have to tell me. Also do me a favor and if you DON'T modify my work and/or distribute it yourself, link people to this page to download the mods rather than giving them direct links, so people are forced to read this crap.

Disclaimer and Warning: As some of you are probably aware, I run my own server, DigHissBoom, and have my fair share of modifications. As a result, these mods are actually extracted from my server source itself, and maybe I missed something in the process. My testing environment is not really set up for testing each mod in isolation and it'd be kind of a pain, so please keep the following in mind: I'm pretty sure these mods work. When they're deployed & installed correctly, they work great, but I can't promise I deployed them correctly, or really that you'll install them correctly. You should test your modded server before pushing these live. Think of it like a pre-alpha, I guess.

So here are the mods!

FMPHardcore - Temporary Death Ban

FMPHardcore is a mod that lets server owners set a death ban time period in minutes- once a (NON-ADMIN) player dies on an FMPHardcore-enabled server they will be booted and not be able to get back in until their deathban expires.

Download: For MC 1.2.5-http://www.mediafire...ztl3z2ctc5ywd2s

For MC 1.3.2 (forge 4.1.1) - http://www.mediafire...cjf6a12b25cen0w

Compatibility: Base clean, should work with all other forge mods.

Installation: Copy the contents of the zip into your jar. In the forge 4.1.1 version, the downloaded zip can be dropped in the mods folder instead.

New op commands:

/deathlength <length> - Sets the length of the deathban. /deathlength 0 disables the deathban. The length is in minutes, so /deathlength 60 bans players for an hour upon death, /deathlength 4320 bans players for 3 days. Changing the length of the deathban will apply retroactively to all currently-dead players.

/resurrect <player> - Un-deathbans a player by name.

/resurrect all - Clears the deathlist.

Notes: Bug #568 (http://www.terrafirm...view.php?id=568) is a crash bug that crashes a player's client when a server prevents the player from logging in, due to not being on the whitelist, being banned, or... being deathbanned! There is a client-side mod I keep up-to-date that fixes this issue until bioxx & co can find the time- located here (http://www.mediafire...zpyaxk95p0eacz8). In build 49 and above, this client mod is not necessary.

Spawn Anywhere - Control the exact position where your players spawn.

Spawn Anywhere is a mod that lets ops modify the position of the spawn point on their server. Having Spawn Anywhere installed will also modify spawning behavior- players will now spawn exactly at the spawn point, rather than in a random position nearby, a la many Bukkit servers. At this time, spawned players always face North.

Download: For minecraft 1.2.5 - http://www.mediafire...0xqk8275wpdq48c

For minecraft 1.3.2 (Forge 4.1.1) - http://www.mediafire...kc12vf88w01pfp2

Compatibility: Base clean, should work with all other forge mods (may have problems with other mods that mess with player spawn position).

Installation: Copy the contents of the zip into your jar. In the forge 4.1.1, the downloaded zip can be dropped in your server's mods folder instead.

New op commands:

/setspawn - Changes the spawn position to where you are currently standing. Saves out the new spawn position & moves the spawn protection zone.

Notes: Does not work post-49, the TFC server generates its own spawn position on startup now and ignores the saved spawn point. /setspawn will work until the server restarts

Thief Taker - Audit Logging for Player Behavior

I suspect that this is going to be the main event- Thief Taker is a mod centered around the idea of logging player activity and allowing ops to pull up logs of things players have done. At the moment, it only logs chest access, but I am looking into expanding this logged data to include exact items removed from chests, destruction and harvesting of TileEntities (anvils, sluices, chests), etc. While this protection against griefers and thieves is ultimately reactive, rather than proactive, DigHissBoom has been able to develop a trusting and friendly community through aggressive banning of suspicious characters in chest logs, and a policy of no appeals for bans. I hope that you'll be able to produce the same results.

Download: For Minecraft 1.2.5- http://www.mediafire...kd1zh576ueat09m

For Minecraft 1.3.2 (Forge 4.1.1) - http://www.mediafire...c3nm6p4mz4mkoaq

Compatibility: Not quite base clean- includes minor modifications to the vanilla MineCraft InventoryLargeChest class- it won't be compatible with any other mod that modifies that class.

Installation: The downloaded zip contains two files: ThiefTaker.zip (copy the contents of ThiefTaker.zip into your jar) and sqlite-jdbc-3.7.2.jar, the sqlite driver that runs Thief Taker's logs. This additional jar MUST be in your server's class path. Locally, I accomplish this by starting my server with this command in windows:

java -cp "minecraft_server.jar;sqlite-jdbc-3.7.2.jar" net.minecraft.server.MinecraftServer

If you use a managed hosting provider for your live server (I use MineCraftServerHost, for instance), you will probably not be able to modify your classpath directly. Instead, many managed minecraft hosts provide a plugins folder or a mods folder (or both) for the use of their bukkit users. One of these folders is probably in your server's classpath, despite the fact that you are not a bukkit user. Drop the sqlite jar into one or both of these folders (which one to use is probably going to depend on your host) and ThiefTaker will probably work! Starting with the forge 4.1.1 version, I've been able to successfully load the SQLite jar by dropping it in the server mods folder with no additional modification of the classpath.

New op commands:

/loadhistory - The next time you open a chest, that block's history will be loaded into memory from the db, and the players involved in that history will be listed to you.

/viewhistory <player> or /viewhistory all - displays the first page of a loaded block's history with or without a player filter.

/playerhistory <player> - Displays a player's log history for your perusal.

/historynext - pages through displayed block or player history

/trimhistory <days> - Deletes all history older than <days> days from the db. Pro tip: unlike other Thief Taker commands, this command is usable from the console, so setting up a scheduled task to use this command once per day will keep your db tidy!

Notes: Does not work after build 51 due to the new chest system not hitting the same player api hooks.

Op Box - Assorted Toys for Administrators

Here's a set of random op commands that I started wishing I had, so I created a mod for them.

Download: For MC 1.2.5 -http://www.mediafire...ocn4ik0gnmub5o4

For MC 1.3.2 (Forge 4.1.1) - http://www.mediafire...ab2nwb4brlv4n4g

Compatibility: Base clean, should work with all other forge mods.

Installation: Copy the contents of the zip into your jar. In the Forge 4.1.1 version, it is possible to just drop the downloaded zip in your server's mods folder.

New op commands:

/tpme <player> - Works like /tp <myname> <player>, except it will also teleport you to players who are offline!

/tpspawn <player> - Sort of like /tpme except it'll teleport you to around where that player's spawn point is. So if they have a bed, near their bed, otherwise the server's spawn point. Works even with offline players.

/tploc <x> <z> - Teleports you to the given location.

/cloneinventory <player> - Replaces your survival inventory, quickbar, and equipped armor with that of the indicated player. Works even with offline players.

Notes: These commands may be a bit laggier than you're used to! They should work at pretty quick speeds when you're dealing with online players, but offline players, we have to pull their data from their save file. Additionally, I have to pull the chunk you're teleporting to in serial if there are no players near it, to prevent you from falling through the world when you get there, which is slower than the normal way. Finally, using /tploc to teleport to a segment of the world that hasn't been generated yet is VERY SLOW for reasons you can probably figure out. Basically, use these commands with care!

5

Share this post


Link to post
Share on other sites

Will test them in the morning, the efforts are greatly appreciated Man!

0

Share this post


Link to post
Share on other sites

Good job man and big thanks for releasing them, a lot of people wouldn't have

0

Share this post


Link to post
Share on other sites

Yours was a wonderful deed to do for the TFC playerbase.

0

Share this post


Link to post
Share on other sites

Hey, here's a client-side mod you can use to fix the SMP portion of #617 (crops never seem to grow in SMP). Bioxx's fix will probably be more complete, and work better than mine. And it'll probably be out soon, so I'd just use this as a stopgap so you can farm in the meantime. http://www.mediafire.com/?j1i55ch7thz73wm

0

Share this post


Link to post
Share on other sites

Hey, everyone.

I started looking into expanding logged data in Thief Taker tonight, and what I found is that there are no hooks in PAPI or forge to do anything I need to do. I really can't justify putting a dirty mod out there like that, so I'm going to be upgrading everything to the new forge (so we'll be ready for b49) and taking another look- I know the creator of Somnia had some new hooks he was going to get accepted just before the forge upgrade, and once I'm on the latest version I can submit my own pull requests to add the hooks I need.

Additionally, I keep getting drawn back to Minecraft Overviewer, and my continuing intent to get TFC rendering in it. So good stuff is coming down the pipe, but a lot of it may not be ready for a bit.

2

Share this post


Link to post
Share on other sites

Would it be possible to add an option to Spawn Anywhere that is basically "start within X blocks of 0,0,0" which would spawn players at random points within a circle with the radius X? X being configurable.

0

Share this post


Link to post
Share on other sites

So good stuff is coming down the pipe, but a lot of it may not be ready for a bit.

Mate, the fact there is a pipeline should be enough for people. It is beyond good of you to help the community out this way :)

0

Share this post


Link to post
Share on other sites

Would it be possible to add an option to Spawn Anywhere that is basically "start within X blocks of 0,0,0" which would spawn players at random points within a circle with the radius X? X being configurable.

Would the intent be to move the spawn point, but preserve the default minecraft spawning behavior? Because a configurable radius is much harder than just allowing you to restore the default spawning behavior.

0

Share this post


Link to post
Share on other sites

I'm thinking random spawn point within radius until set via bed. Possibly new spawn point upon death. Doesn't default always spawn you very closely to the actual spawn point? I'm talking about spawning the players randomly but ingame kilometers apart.

0

Share this post


Link to post
Share on other sites

Okay, I see what you're saying. I think that idea would probably do best as a separate mod, but I've been thinking about something similar to help players spread out a bit if they want to.

0

Share this post


Link to post
Share on other sites

Pardon, is thieftaker, compatible with the latest version g?

0

Share this post


Link to post
Share on other sites

Yeah- in general, don't worry much about compatibility issues for the posted mods. They're base-clean forge mods, so the only thing that will break compatibility is if bioxx changes the version of forge he's using (as will probably happen in 49). There's that one minor exception for minecraft's big chest class in thief taker, but bioxx hasn't seemed to feel the need to modify that yet :)

0

Share this post


Link to post
Share on other sites

2012-09-01 07:45:49 [sEVERE] Error while opening thieftaker.db: java.lang.ClassNotFoundException: org.sqlite.JDBC

.. What does that mean ? :S

0

Share this post


Link to post
Share on other sites

It means that the sqlite jar that came with thieftaker is not in the server's classpath. There are instructions on how to address that in the OP, but lemme know what your setup is like if you've followed that instructions and are still getting that error.

0

Share this post


Link to post
Share on other sites

Hey everyone- I've updated ThiefTaker to 0.2 (only change worth mentioning is the addition of the /playerhistory command, detailed above) and added a NEW MOD called OpBox, which I think everyone should check out. These are commands I wish I had while hunting down some thieves, so here they are! Please enjoy!

1

Share this post


Link to post
Share on other sites

Hey, guys,

I spent the past couple days getting into the new Forge 4.0 modding API that will probably be getting used for build 49. I've got all 4 listed mods converted over (but not tested!) and ready for 1.3. So that's good! To let you know what the plan is:

- There is currently a pull request from a member of the forge community pending for a block harvested event (which will allow me to add more logging to Thief Taker without adding new hacks)

- The guy from Somnia is working on converting his Block Activated pull request to 4.0, which will allow me to get Thief Taker totally base-clean and spin off one of my hacks into a real mod that I can post here: Sign Language, a hack that lets you set up events for when players right click a sign.

- I'm going to be putting work into a pull request that will give forge mods some control over explosions, which, if accepted, will allow me to spin off two DHB hacks into mods:

1. Blast Shield - a hack that prevents explosions from affecting the spawn protection zone

2. I Heart Creepers - a hack that causes natural blocks to be ignored by creeper explosions

The HOPE (and it might not be realistic, and even if everything goes right, bioxx might not use the version of forge with these pull requests in it) is that the version of forge used by build 49 will be high enough that all of these mods will work with b49 servers. This will not only make it so that all of DHB's server stuff are then available to the community, but also drastically reduce the amount of work I have to do to maintain my changes, since I don't need to keep a working copy of the TFC source (except for bug fix mods).

2

Share this post


Link to post
Share on other sites

Man dog you say... Tell me, how does it feel to be the first human-dog crossbreed?

0

Share this post


Link to post
Share on other sites

Hey guys, I just found a bug in OpBox- all those commands are CASE SENSITIVE when used on offline players. If you get the casing wrong, it won't tell you the player doesn't exist, instead it will do something weird, like giving you an empty inventory for /cloneinventory or taking you to spawn for /tpme

0

Share this post


Link to post
Share on other sites

Ah, thank you on that update Sdb, i haven't needed to do that yet, but thanks for the warning :)

0

Share this post


Link to post
Share on other sites

Hey, I'm gonna be doing testing on the mods already finished, but I'm inclined to believe looking through the source that the two client-side mods I've posted are actually unnecessary in build 49, as the related issues have been fixed! Yay, bioxx!

1

Share this post


Link to post
Share on other sites

Hey, everyone, I've added download links to the build 49-compatible versions of FMPHardcore, Thief Taker, and Spawn Anywhere. Op Box was having some problems so I'm gonna have to deal with it tomorrow. Op Box is more of a "nice to have" rather than a "must have", so you should be able to go live with 49i if it sews up the last of the major issues. This was all tested with forge version 4.1.1.251, which seemed compatible with build 49h. I was having some discovery issues with the 4.0.0.200 version linked from the TFC download page. I highly recommend you use 4.1.1.251.

Additionally, it's worth noting that I made some changes to the instructions in the OP:

- The new versions of FMPHardcore, Spawn Anywhere, and when complete, Op Box, can all be installed by dropping them in the mods folder, without modifying your server jar.

- Thief Taker still must be copied into your jar, but you should now be able to drop the sqlite jar into the mods folder without having to modify the classpath. Still need those pull requests to be accepted before I can make this a simple drag and drop install like the others.

- All of the client mods I'd put together previously are now unnecessary- all the issues I'd made client mods for have been fixed.

0

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0