Gods
The plugin for adding Gods to the world of minecraft.
A God is an entity that exist because a player has chosen to believe in it.
A player shows his faith in a god by building an altar for his god and using the altar to pray.
In this way, many gods may exist at a time, all with names created by the players.
The main purpose for believing in these Gods is to gain from the help the Gods provide (see below) and to provide some basic faction play based on ideology and culture (I.e. "My god is better than yours because apples are holy!").
Note that this does NOT mean that Gods are "free item dispensers": Gods will only bless players with items when they are pleased with the effort of their believers.
Gods will even punish a player for ignoring their divine wishes.
With Holy Lands, players can easily protect their lands from grief by simply building alters.
Another purpose is simply to get people inspired to build awesome churches for their Gods.
Check out what others have build for their God here

Altars
Building an altar is simple:
- Place a normal or redstone torch on a smooth brick block
- Place a sign on the side of the block with ONLY the name of your God written on any line
- Players can now pray to this God by right-clicking on the altar sign
If you place a normal torch, you specify a male God.
If you place a redstone torch, you specify a female God (Goddess).
Note that when building the first altar for a God, the altars position will be set as the "religion home" and believers can reach it with the /gods home command.
Rules
- Gods exist as long as players believe in them
- Gods comes into existence when players build altars to them
- Gods grow stronger from the number of believers they have
- Gods grow stronger from the number of prayers at their alters
- Gods appoints a single believer to be his priest
- Gods will bless their believers with (only) items they need
- Gods will bless their believers with health if they need it
- Priest can pray for Blessing and Cursing specific players
- Gods send their believers on quests
- Gods protect their lands around their altars.
Pleasing the Gods
As we all know, Gods are very moody entities:
- Whenever you do something which the God approve of, his mood will increase.
- Whenever you do something which the God disapprove of, his mood will decrease.
- Even when doing nothing, the Gods mood will slightly decrease. (Gods do not like being ignored)
The mood of a God has certain effects:
- Exalted Gods will give needed items, food and actively bless their believer with buffs.
- Pleased Gods will give needed items and food.
- Neutral Gods will encourage more prayers.
- Displeased Gods will complain about lack of attention.
- Angry Gods will punish their believers for lack of attention.
Any believer can check the mood of their God with the /g info command.
Item Blessings
Periodically, the God will check for his believers needs:
- When a believer has no pickaxe, the God will bless his believer with a pickaxe
- When a believer has no sword, the God will bless his believer with a sword
- When a believer is low on health, the God will bless his with health
- When a believer has no food, the God will bless his believer with food
The more powerful the God is, the more frequent the God will attend to his believers. The exact quality of the item (wood, stone, diamond) also depends on the power of the God.
Blessing Altars
A Priest can ask his God to specifically bless any player by using an altar:
- Build an altar as described above
- On the sign, write "Blessings" on line 1
- On the sign, write "on" (or anything) on line 2
- On the sign, write the name of the player on line 3
Now the priest can right-click the sign, praying to his God to bless that player!
Cursing Altars
A Priest can ask his God to specifically curse any player by using an altar:
- Build an altar as described above
- On the sign, write "Curses" on line 1
- On the sign, write "on" (or anything) on line 2
- On the sign, write the name of the player on line 3
Now the priest can right-click the sign, praying to his God to curse that player!
Commandments
Any God with respect for himself have strong opinions about what is right and wrong.
A God will periodically tell his priest about what food and creature types are considered holy and unholy.
Because the God will react swiftly with blessings and curses on his believers accordingly to these commandments,
it is the priests responsibility to communicate (preach) this information to the believers in general.
Quests
Gods will periodically issue quests for their believers, for them to show their faith in him.
This may include quest for slaying mobs, sacrificing certain items etc.
If completed, all the believers will be rewarded by the God and the quest completion will act as a mass-prayer, effectivly adding significantly more belief to the God.
Sacrifices
Believers can sacrifice items to their God by burning any item of their choice.
The God will have a certain need for certain item types and it is up to the believer to find out the needs of their God at any given time.
Sacrificing items that the God needs will result in a blessing and added belief in the God, which in turn adds more power to the God.
Be warned that sacrificing items to a God which has no interest in the item or "spam-sacrificing" a God can have deadly consequences...
Gods will also issue sacrifice quests from time to time.
The Holy Book
All Gods have their "Bible" or "Holy Book", which is maintained by the priest.
At any time, the priest can produce a copy of the current edition of the Holy Book with /gods bible.
The priest can edit a copy of the current edition of the Holy Book with /gods editbible.
He can also choose to set the currently held book to be the official Holy Book for his religion with /gods setbible.
Marriage
Players can marry another believer within their own religion.
After completing the simple wedding ceremony, the couple can "love" each other with the /g love command.
Married couples will add further to the happiness of their God, especially if their God is a God of love.
Holy Lands
The land around an altar is considered holy to that particular God.
Only believers of the God has access and can destroy within their Holy Land. This acts as a simple anti grief control purely based on building altars.
Conquering Holy Lands
- When using Holy Lands, a priest can call an attack on an enemy God's Holy Land by using the /g attack command.
- During the attack, the Holy Land is considered "contested" and no-none can build within the land.
- The contested state will last for 1 day or until either side of the attack has killed enough believers to resolve the conflict.
The God Names
By default, any player is free to believe in any obscure God name that he wishes. (Just like in real life...). To gain more control over the God names, there are 2 options:
- Use a whitelist containing the God names of the allowed Gods on the server. ONLY these Gods will be permitted on the server.
- Use a blacklist containing the God names that are disallowed on the server. Any other God name than these will be permitted on the server.
Check out the whitelist & blacklist page for the details on how to setup these lists.
See config settings below for how to enable the blacklist and whitelist.
Languages & Custom God speak
All the text for the Gods speech can be changed and customized to your needs.
You might want do adjust the tone of what a God say, expand what a God can say or even want a God to speak in another language!
All the God speech text files are found in /lang folder within the plugins folder and are by default automatically downloaded from my own server at http://www.doggycraft.dk.
(Note: To disable the download of language files, set the DownloadLanguageFile option to false in your config.yml.)
Simply use these file as templates for other languages or for adjusting the tone of voice for each God type.
Chat Formatting
Want to a players God as part of their chatname?
See here how to setup God names in the chat
Installation
Put the Gods.jar file in your /plugins folder and you are ready to go!
Commands
| Command | Description |
|---|---|
| gods | Show the basic info |
| gods help | Shows the command list |
| gods list | Show the top 10 list of gods |
| gods info | Show the detailed info for your God |
| gods info <godname> | Show the detailed info for a specific God |
| gods check <playername> | Show what God another player believes in |
| gods desc <description> | Lets a priest set description for their religion |
| gods marry <playername> | Propose marrige to another believer |
| gods divorce | Divorce your partner |
| gods love | Love your marrige partner |
| gods followers | Shows a list of beliveres for your God |
| gods followers <godname> | Shows a list of beliveres for a specific God |
| gods open | Lets a priest set their religion as public |
| gods closed | Lets a priest set their religion as private |
| gods war | Lets a priest declare war against another religion |
| gods ally | Lets a priest declare alliance with another religion |
| gods invite <playername> | Lets a priest invite a player to his religion |
| gods kick <playername> | Lets a priest kick a player from his religion |
| gods pvp | Lets a priest set PvP within their religion |
| gods bible | Lets a priest produce a copy of their Holy Book |
| gods editbible | Lets a priest edit the current Holy Book |
| gods setbible | Lets a priest set the currently held book as the Holy Book |
| gods chat | Toggle chat within player's own religion |
| gods leave | Leave your religion |
| gods setpriest <godname> <playername> | Set <playername> as priest for the god <godname> |
| gods reload | Reloads the config settings from disk |
| gods yes | Accept a proposal from a God |
| gods no | Reject a proposal from a God |
Permission Nodes
Note that Gods currently supports PermissionsBukkit, PermissionsEX, bPermissions and GroupManager.
Just PM me with requests for supporting other managers.
- gods.* - Player can do everything below
- gods.pray- Player can pray directly to their Gods using /g prayfor command
- gods.listen - Player can hear Gods speaking
- gods.marry- Allows the Player to marry
- gods.quest.slay - Player can participate in slaying quests
- gods.altar.build - Player can build an altar
- gods.altar.pray - Player can pray using an altar
- gods.altar.sacrifice - Player can sacrifice items using fire
- gods.god.create - Player can create (believe) in a new God
- gods.itemblessings - Player can receive item blessings from a God
- gods.blessings - Player can be blessed by a God
- gods.commandments - Player is affected by commandments of a God
- gods.curses - Player can be cursed by a God
- gods.marry - Player can marry other players
- gods.love - Player can love their partner
- gods.divorce - Player can divorce their marrige partner
- gods.accept - Player can accept proposal from a God
- gods.reject - Player can reject proposal from a God
- gods.help - Player can check the help information
- gods.info - Player can check info for each God
- gods.listen - Player can hear the words of a God
- gods.chat - Player can toggle chatting within their own religion
- gods.sethome - Player can set their religion home
- gods.home - Player teleport to their religion home
- gods.check - Player can check which God another player believes in
- gods.setpriest - Player can set the priest of a God
- gods.priest - Player can become priest of a Gods
- gods.priest.invite - Priest can invite player to his religion
- gods.priest.kick - Priest can kick player from his religion
- gods.priest.description - Priest can set description for his religion
- gods.priest.pvp - Priest can toggle pvp within his religions Holy Land
- gods.priest.alliance - Priest can declare alliance with another religion
- gods.priest.war - Priest can declare war towards another religion
- gods.priest.peace - Priest can declare peace towards another religion
- gods.priest.description - Priest can change the description of his religion
- gods.priest.bible - Priest can produce a copy of their Bible
- gods.priest.editbible - Priest can edit their Bible
- gods.priest.setbible - Priest can set a book as their Bible
- gods.holyland - Player is affected by holylands (I.e: Unable to build in holyland of another God)
- gods.list - Player can check the list of Gods
- gods.reload - Player can reload the Gods configuration file
- gods.updates - Player will see notifications about new updates to the Gods plugin
Configuration
| Setting | Description | Default Value |
|---|---|---|
| Settings.ServerName | Default name for the server. Used for god talking, the 10 list etc. | 'Your Server' |
| Settings.Worlds | List of worldnames in which Gods are enabled | <list> |
| Settings.MoodFalloff | Mood falloff multiplier for all Gods | 0.030 |
| Settings.MinItemBlessingTime | Minimum time in minutes between a God can bless a believer with items | 10 |
| Settings.DownloadLanguageFile | Wheter language files should be downloaded from Doggy | true |
| Settings.OnlyPriestCanSetHome | Whether only priests can set the religion home | false |
| Settings.MaxPriestsPrGod | Maximum priests in a religion. | 1 |
| Settings.NumberOfBelieversPrPriest | Number of believers needed between seeking next priest | 3 |
| Settings.MaxBelieverPrayerTime | Maximum allowed number of hours since last prayer for a believer. If exceeded, the God will lose him as a believer. | 72 |
| Settings.MaxPriestPrayerTime | Maximum allowed number of hours since last prayer for a priest. If exceeded, the God will drop him as priest and start looking for a new one. | 154 |
| Settings.MinBelieverPrayerTime | Minimum number of minutes allowed between prayer for a believer. | 30 |
| Settings.DisplayUpdateNotifications | Display notifications about new updates for this plugin | true |
| Blessings.Enabled | Whether the blessing features are enabled | true |
| Commandments.Enabled | Whether the commandments features are enabled | false |
| Commandments.BroadcastMobSlain | Broadcast slain mobs to all believers | true |
| Commandments.BroadcastFoodEaten | Broadcast food eaten to all believers | true |
| Quests.Enabled | Whether the quest features are enabled | false |
| Quests.MinMinutesBetweenQuests | Minimum minutes allowed for a God giving out quests | 180 |
| Quests.RewardValues | The godpower value of items which can be rewarded for completing quests | <list> |
| Blessing.Enabled | Enable blessings on players controlled by priests | true |
| Blessing.MaxBlessingTime | Number of minutes a player can be blessed by a priest at a time | 10 |
| Blessing.MinBlessingTime | Number of seconds between a player can be blessed | 60 |
| Blessing.FastDigging | Enable fast digging blessings | true |
| Blessing.Regeneration | Enable regeneration blessings | true |
| Cursing.Enabled | Enable curses on players controlled by priests | true |
| Cursing.MaxCursingTime | Number of minutes a player can be cursed by a priest at a time | 10 |
| Cursing.MinCursingTime | Number of seconds between a player can be cursed | 5 |
| Cursing.Lightning | Enable lightning curses | true |
| Cursing.Mobs | Enable hostile mobs curses | true |
| MinBelieversForPriest | Minimum believers required for a God before the God appoints his priest. | 3 |
| LeaveReligionOnDeath | Whether a believer will auto-leave his religion when killed. | false |
| ItemBlessings.GodPowerForLevel1Items | The power needed for handing out level 1 items (stone) | 10 |
| ItemBlessings.GodPowerForLevel2Items | The power needed for handing out level 1 items (iron) | 50 |
| ItemBlessings.GodPowerForLevel3Items | The power needed for handing out level 1 items (diamond) | 100 |
| ItemBlessings.MinItemBlessingTime | Minimum time in minutes between a God can bless a believer with items | 10 |
| ItemBlessings.MinGodPowerForItemBlessings | Minimum God power for a God before a God can bless a believer with items | 3 |
| Holyland.Enabled | Whether the holy land features are enabled | false |
| Holyland.BreakableblockTypes | List of block types which can always be destroyed within Holy Lands | SMOOTH_BRICK |
| Holyland.DefaultPvP | Whether believers can PvP eachother wihin their Holy Land by default | false |
| Holyland.DefaultMobDamage | Whether believers can take damage from mobs within their Holy Land by default | false |
| Holyland.Lightning | Players will be pnunished by lightning if attempting PvP within another religions Holy Land | false |
| GodVerbosity | How talkative are the Gods? (value from 0 to infinity) | 1 |
| PriestAssignCommand | Command to be executed when removing a player as priest. This is useful for adding players into a "priest" rank. Example for PermissionsBukket: 'perm player setgroup $0 $1' | "" |
| PriestRemoveCommand | Command to be executed when removing a player as priest. This is useful for removing players from a "priest" rank. Example for PermissionsBukket: 'perm player setgroup $0 $1' | "" |
| UseWhitelist | Use whitelist to only allow the God names on it | false |
| UseBlacklist | Use blacklist to disallow specific God names | false |
| LanguageFile | Use this file for God language text | english.yml |
| Bibles.Enabled | Whether the Bible features are enabled | false |
| Altars.BlockTypes | The altar blocktype for each God type (divine force) | <list> |
| Marrige.Enabled | Whether marrige is enabled | true |
| HolyArtifacts.Enabled | Whether Holy artifacts are enabled | false |
| Debug | Enable debugging information | false |
Upcoming features
- Admin commands for setting power, type, names for Gods
- Holy Artifacts
- Titans
- God "drama": Jealousy, weddings, love, hate, war and family relations between Gods.
- Prophecies
- Holy Battles
- Pilgrimages
- Crusades
- Prayers
- Miracles
- More effects/feedback when destroying altars
- Specific permissions for each God using the whitelist
- Specific language files for each God using the whitelist
- Gods periodically manifests themselves self in the world in form of a mob
- Server history as seen from each religion noted in their Holy Book
- God personalities
- Direct PvP/Battlefield action by Gods
- More commandments
- Weather altars
- Altars deteriorate the surrounding blocks if their God dies out
Do you want to support this plugin?
Disclaimers
This plugin contacts curse.com and checks for newer versions by using the Curse ServerMOD API.
Opting out of this service can be done by editing config.yml and changing DisplayUpdateNotifications to false.
This plugin utilises Hidendra's plugin metrics system, which means that the following information is collected and sent to mcstats.org:
A unique identifier
The server's version of Java
Whether the server is in offline or online mode
The plugin's version
The server's version
The OS version/name and architecture
The core count for the CPU
The number of players online
The Metrics version
Opting out of this service can be done by editing config.yml and changing MetricsOptOut to true.
Want to contribute? Gods is open source!
Check out the official repository on github

-
View User Profile
-
Send Message
Posted Feb 23, 2013From 0.7.0 there is a major change to how language files are used in Gods.
There are now a language file pr. godtype pr. gender, which means there are currently 28 language files for god speak + 1 general language file for item names, mobs etc.
Also, instead of being generated by the plugin, all official language files are now downloaded by the plugin from a central place (my server), for example:
Now, the problem is of course that this is ALOT of text writing to do, so I am hereby asking for help from you guys!
Anyone feeling up to the challenge is welcome to send me their language file for example for "Evil Goddess" and I will put it up as an official one. Also, i need language files in other languages as well as part of the official collection.
As a credit to anyone who would like to participate in this, each file holds the author name and will therefore be credited under the /g command as the author of the language file in use on servers out there.
-
View User Profile
-
Send Message
Posted Feb 23, 2013@OriginalMadman
Thanks for the detailed analysis!
From this info, it seems like it is not actually work load from Gods that causes CPU spikes but rather something with the threading model.
I have changed the threading from synced to async in version 0.7.0 which i just uploaded.
Hopefully it will make a difference for you :O
-
View User Profile
-
Send Message
Posted Feb 23, 2013would be nice to have a config option to disable holy animals, or an ingame command to change Holy Animals/unholy creatures
-
View User Profile
-
Send Message
Posted Feb 22, 2013@hunted2
This description (and OS/system/specs) pretty much mirrors my observances. I do not run Nolag at the moment, but I did several timings analysis, which did NOT indicate Gods taking huge resources (it was never even top 10), but something is really happening (just what?). Here are two different analyses:
Thanks for your hard work with the plugin and I really hope to be able to start using it in the future.
-
View User Profile
-
Send Message
Posted Feb 22, 2013@doggy
Yeah there's definitely a race condition or something going on. I'll try to grab you some debug info soon. Give me a bit, I'm trying to appease the community here by adding a few different plugins. We lost a lot of people with the downtime (not 100% related to this issue mind you).
-
View User Profile
-
Send Message
Posted Feb 22, 2013@hunted2
Thanks for the very detailed behaviour report!
I am sorry that you had to go through all that trouble to pin it down, but this really helps me understanding what might be going on: I suspect that a recent switch from async to a sync thread (synchronized with the bukkit server thread) might be causing the trouble. Not that i fully understand it yet, because the Gods plugin is really not doing much work at all :/
It could also be related to the eclipse 32bit/64bit version it seems, but i need to do more testing.
IF you every have the time for it, you could enable the debug option which will let the plugin display the milliseconds spend doing work for Gods. If these timings are over a few milliseconds, the plugin is doing way too much work for very unknown reasons....
-
View User Profile
-
Send Message
Posted Feb 22, 2013@Warpuppy1
@MURD3RUS
Try deleting the english.yml and let the plugin re-generete it.
I did some additions to the file in 0.6.9
-
View User Profile
-
Send Message
Posted Feb 22, 2013@OriginalMadman
Thanks for the info!
-
View User Profile
-
Send Message
Posted Feb 22, 2013@Dark_Zekrom
The name for each item is contained in the language file called english.yml.
Just add another entry under the "Items" section like this:
-
View User Profile
-
Send Message
Posted Feb 21, 2013@murd3rus: I had to wipe the gods DB and folder to restore /gods list after an upgrade - seems the data or config isn't converted to the new version right.
@doggy
Ubuntu 12.04 64bit fully updated, JDK 7u13 on Intel Xeon E3-1230v2 8 core @ 3.3GHz 16G RAM (9GB given to java heap, 40-50 players during peak times and growing)
And yes, when you watch your processors with top (option 1) you see the 100% thread jumping around. When it hits core0 (the one bukkit lives on) that's when you get lockups. Most admins probably aren't even aware of this issue because it's not instant lockup and only maxes one core. If you just watch total proc % instead of your individual cores you think you are OK. It has to build and then jump cores so it seems sporadic.
Nolagg examine does not indicate gods using a lot of cycles either, I had to manually go through 50 plugins and a week worth poor performance and pissed players/staff until I isolated it .
Good luck tracking it down. Players really do love this plugin.
-
View User Profile
-
Send Message
Posted Feb 21, 2013I have a question... How come after I updated to the most recent version, "/gods list" stopped working correctly and now gives me errors? Is there something that was changed/taken out/added to the gods.yml file? Perhaps I need to update a value previously given to a few of the gods in an older version of gods plugin? Anyway, it'd be nice to know, because half of my server's gods aren't showing now, although they're still in the gods.yml and they still have believers in believers.yml. Another question, is it just me, or do the gods not talk anymore? "No language string found for GodToBelieverRandomNeutralSpeech!"
-
View User Profile
-
Send Message
Posted Feb 21, 2013Is there a way to change your god? Like from god of evil to god of thunder, as well as their holy/unholy creatures and so on.
-
View User Profile
-
Send Message
Posted Feb 21, 2013Uhm, I can't seem to get the gods to talk. There's no text when the gods ask you to be priest other than, Do you accept?
-
View User Profile
-
Send Message
Posted Feb 21, 2013@DoggyOnFire
Ubuntu 12.04 LTS (lowlatency kernel), all apt current and up to date + JDK 7 64-bit, u15 (latest). 16GB ram, i7 2660k 3.4Ghz so plenty of power. 4GB java heap for server (>plenty). 10-20 players on average (only had 3 believers tops, since I was only testing the plugin).
Tbh, I'm not entirely sure it is 100% CPU everytime, it may well lock up w/o being in 100% CPU too. It does lock up w/o error message and renders the server for all intents and purposes dead. I can get it to accept stop or ctrl+c, but it really doesn't even shutdown and I have to kill -9 it.
-
View User Profile
-
Send Message
Posted Feb 20, 2013Server crash because execution of tasks for a god - killing sheep. The latest version. Latest java. Win 7 64 bit. No errors mesage - just freeze.
-
View User Profile
-
Send Message
Posted Feb 19, 2013@OriginalMadman
@hunted2
Hmm, if you really get 100% CPU usage then that might be linked to the server freezing up issue as well :o
I cannot seem to reproduce such crazy CPU usage myself, but after researching around on bukkit, it seems that it might have to do with the use of scheduleSyncRepeatingTask and 32 bit or 64 bit versions of the java compiler.
What versions of linux are you running?
-
View User Profile
-
Send Message
Posted Feb 19, 2013Just wondering, what do I put if I want Rotten Flesh to be unholy? In the gods.yml, I put ROTTEN_FLESH as unholy for my god but in game it still says ROTTEN_FLESH instead of like COOKED_BEEF is steak. Is this supposed to be like this or what?
-
View User Profile
-
Send Message
Posted Feb 19, 2013@hunted2
Same for me yes. And now i'm positive it was Gods v.69 on 1.4.7 RB1. Haven't had an issue since I disabled it, and looking in the logs - I had 3 lockups with it installed. I'm running i7 2660k, 3.4GHz 8 cores, also dedicated (linux).
It would be great to see it sorted, since I love the plugin.
-
View User Profile
-
Send Message
Posted Feb 19, 2013@ Everyone who experiences strange lockups:
Are you noticing a processor core maxing out when Gods is installed? This has been my experience. I traced it down to Gods v.68 and the issue resolved when I disabled this plugin. I haven't tried v.69 since it's been released (identified the issue last week).
I'm running a E3-1230v2 3.3GHz 8 core dedicated server, so no way Gods legitimately needs 100% of a core.
-
View User Profile
-
Send Message
Posted Feb 19, 2013Localization files (for example - in Russian), after server start overwritten on English. WHAT SHOULD I DO?