Warning - long post
Goal: Provide a rewarding, unique, and enjoyable survival experience.
Setup: I have a shared host located in Canada running linux. At this moment, its only purpose is to host MT and all available options using Postgresql
Not interested:
- Easy experience for noobs
- Being the most popular server
- Having the best content which caters to everyone
Interested:
- Effiecient balance of content vs server-side processing
- Advanced tech tree
- Setting up a sign up system to hopefully deter non-experienced, disrespect, or other general a**holery. I would like some type of automated process but I may just settle for having to create accounts manually
Mods already planned to include (* - possibly with some personal edits): Ethereal, Awards*, Weather*, Lightning, Moreblocks, Balloonblocks*, Illumination, Timespeed, Unified Inventory, Areas, Simple Waypoints*, Titanium, Terumet, Techpack*. XConnected
Mods being considered: Real Torches, Climate, Experience, a skins mod, mobs (not sure which ones), teleporter mod (not sure which), Magma Conduits, the bag mod from Blocky's that you equip like armor
Notes: Below I'll list random thoughts/questions and TIA for anyone who actually reads them and provides input. If it's TL;DR, please just let me know your favorite
Mapgen intentions: V7, caves, dungeons, light, decorations, biomes
Random thoughts/questions
1. I'm considering dropping MapGen limit from 31000 to 15000~ish. Is it possible to not generate map above a certain Y? Let's say floatlands max Y + 100 or 150?
2. I would like to generate fewer caves overall but possibly make them larger. Any advice on mapgen settings is appreciated.
-Edit: It seems like chunk size does what I want but... there's a big warning label on it :-/
3. How can I customize the loot placed in dungeon chests? I would like to place higher value loot in lower Y dungeons
4. Would a texture pack work for a skins mod or must the server host the skin textures?
5. Would it cut down on bandwidth to require a texture pack? I'm thinking I could set all server textures to a tiny black image and users must use a texture pack to even play. Thoughts?
6a. Is it possible to delete/regenerate part of a map? As in randomize caves/dungeons once a month or so...
6b. Is it possible to set a different spawn for each player? What I'm thinking is on first join, put the player in a room with some information, starter kit, etc and then set that player's spawn to a unique location?
6c. I wonder if I could make sections of world separated by void/null for each player? Players could invite others to his/her partition. There would be one shared partition. If a player is absent/dormant for too long then the server would recycle that partition and if the player came back later it would generate a new one. Thoughts?
7. I like most of what I see with Techpack but I'd like some alternate (non-wood) textures for it. Also thinking about adding a node to provide wireless power to other nodes.
8. I want to somehow give autocrafter mods the ability to use groups in the recipe section
9. I saw a mod that required using an axe to chop trees and user had to get wood from a bush to get a wooden axe first. I can't remember which mod that is
10. I would love to make those huge mushrooms from Ethereal more useful. Is there something for this already?
11. I dug into the MT code and it looks like rollback only supports SQLite. Is there a way to make it work with Postgresql? Does Postgresql have this independent of MT? Would this even benefit server performance?
12. I like having rain/snow but I would like to spread the textures (particles?) out so it's easier to see. When I was using Weather + Climate, it snowed constantly and I couldn't see very far at all.
13. Is it possible to set an area so that a player can't build/mine unless he/she protects it first?
14. I like the concept in Terasology of requiring different crafting tables for different purposes and I would like to implement that or similar
15. How can I generate rare ore in floatlands as well as deep underground?
Thinking about setting up a public server
Re: Thinking about setting up a public server
not sure how exactly, but it is possible to limit the world size by editing the worlds conf file.
chunk size (default 80x80x80) is how much of the map is generated as once. this does affect certain things, as the mapgen (in most cases) cannot generate structures through multiple chunks.
increasing the chunk size could lead to bigger caves, but will also slow down performance.
maybe there is a better way to alter the cave generation.
as far as i know they are hard coded, but maybe there are some adjustable parameters?
this is handled by the mod that generates lootable chests. random loot is selected from a list, based on set probabilities.
since the chests are map decorations, it should be possible to limit their appearance to certain coordinate ranges, so you can copy paste the code to generate different chests at different heights.
i guess the most elegant implementation would be to integrate the height check into the loot function and direct to the respective loot table, but i don't know if that is possible with the given features.
a texture pack only affects the default player skin (Sam). for individual textures, a skins mod is necessary.
the easiest one would be "simple skins", which directly assigns textures to player names, but this has to be done manually by the server owner.
the default game textures are on the server, i think users always have to load them even when they have the same textures installed in another game. (having a texture pack installed does not skip this step, since the pack overwrites the given textures and uses the original ones for nodes/items not present in the texture pack.)
making your textures minimal and asking the players to use texture packs, requires the players to know exactly what textures they would need get and how to precisely name every image file.
i don't think anyone would do this, so the better solution is to provide a prepared texture pack(s) for players to download.
this would reduce the file size of texture downloads from the server, but not the number of files. not sure how much the loading time would benefit from this.
it is possible un-generate mapchunks, which will then automatically regenerate when a player walks into vision range.
however, the newly generated chunk will not fit with the old chunks, so not only biomes but also terrain can be completely different and create a sharp edge at mapchunk borders.
this is less noticeable underground, but would still create some odd cave ends.
pretty sure this is possible. the default spawn function randomly drops the player within a certain area upon death. servers with a set spawnpoint and /spawn command use a mod to overwrite that function.
i remember reading that one of those mods can set individual spawn points (or random spawn functions) for individual players.
that's highly complex and i'm not sure even possible.0siribix wrote: ↑Thu Jan 07, 2021 04:346c. I wonder if I could make sections of world separated by void/null for each player? Players could invite others to his/her partition. There would be one shared partition. If a player is absent/dormant for too long then the server would recycle that partition and if the player came back later it would generate a new one. Thoughts?
but world sections can be done with coordinate restrictions on biome definitions.
i don't think you can set 'void', but you could slice the world by filling lines (or rather 2d layers) with air.
although you have to deal with leaking liquids afterwards.
custom made indestructible glass would work.
changing textures is easy, just replace the textures and make sure they have the same name. (or put the new texture names into the node definitions)
pretty sure wireless power was available in some mod... it was a simple one with switches that don't require cables, so definitely not mesecons.
since they use the nodes that you put in the slots, i don't think you can make them use groups.
unless you make a new mod that can access recipes directly instead of requiring a sample grid.
oh, i've heard about that. don't remember the name either, but this can be done by removing the "oddly-breakable-by-hand" damage group from the node definitions of all nodes that you want to require an axe to break.
if i remember correctly, on Xanadu the cap is required to make purple moss, can be crafted into spores to grow the small poisonous shrooms (which can be turned into red dye), pores negate fall damage (and disable jumping) and can be burned as fuel, and the trunk is the whitest wood available.
not sure how much of that is server exclusive, but i guess most of it is in the ethereal mod.
i don't know any outside mods that use them, but if you have any potions mods you could alter the recipes to use those mushrooms.
i guess this can be adjusted from within the respective mods. if it is not documented, you'd have to ask the mod creators.
usually protection mods prevent access from all except the owner. maybe it is possible to reverse this feature to only allow action within protected areas.
but the problem is that the player would randomly drop protections wherever they go, and a new player may be unable to do anything since they cannot gather craft materials for protection items without owning protected areas first.
not sure if restricting recipes is possible, but you could implement different methods of crafting.
by default we have "crafting" and "cooking". the furnace is used for "cooking" and the same (or similar) method can be used to create new items that utilise new methods such as "fermenting", "drying" or "freezing".
for different crafting tables, there used to be a mod that adds bigger crafting grids with more complex recipes, but then the bigger tables can also do all the smaller recipes, so it's not fully exclusive.
ore generation is coded in the mapgen mod(s) and can be adjusted.
just like any other map decoration, you can specify target biomes, nodes and coordinate limits.
✨🏳️🌈♣️✨
Re: Thinking about setting up a public server
TYVM for your feedback. My lunch break is over but I'll reply back in a bit. I guess I could have mentioned that I'm a coder and I've done a few tweaks/mods for personal stuff so I'm at least familiar with most of what I posted.
Re: Thinking about setting up a public server
This changes everything. I thought the world was generated on first startup or first user join. I didn't realize it only generates the world a chunk at a time. World size is easily configurable but it is a single parameter of how many nodes away from 0,0,0. Default of 31000 means -31000 to 31000 for each axis. What I don't like about this is that there is air all the way up to 31000. I think I would like to void everything slightly above the tallest floatland.firefox wrote: ↑Thu Jan 07, 2021 16:302. not sure how exactly, but it is possible to limit the world size by editing the worlds conf file.
...
chunk size (default 80x80x80) is how much of the map is generated as once. this does affect certain things, as the mapgen (in most cases) cannot generate structures through multiple chunks.
increasing the chunk size could lead to bigger caves, but will also slow down performance.
maybe there is a better way to alter the cave generation.
as far as i know they are hard coded, but maybe there are some adjustable parameters?
I like this idea. I'll look into it more when I actually get things up and runningfirefox wrote: ↑Thu Jan 07, 2021 16:303. this is handled by the mod that generates lootable chests. random loot is selected from a list, based on set probabilities.
since the chests are map decorations, it should be possible to limit their appearance to certain coordinate ranges, so you can copy paste the code to generate different chests at different heights.
i guess the most elegant implementation would be to integrate the height check into the loot function and direct to the respective loot table, but i don't know if that is possible with the given features.
Hosting the textures download was my intention, forgot to mention that. My question about skins was that I wonder if I can include skins the same way or *must* the server provide those? On the same thread can other assets be used the same way? (sounds/meshes). I have noticed that MT client will only allow one texture pack at a time. This means if someone wants to use custom textures he/she would have to manually merge them. This is in the realm of too complicated to be worth getting started so I may just have to scrap this entire idea.firefox wrote: ↑Thu Jan 07, 2021 16:304. a texture pack only affects the default player skin (Sam). for individual textures, a skins mod is necessary.
the easiest one would be "simple skins", which directly assigns textures to player names, but this has to be done manually by the server owner.
...
5. the default game textures are on the server, i think users always have to load them even when they have the same textures installed in another game. (having a texture pack installed does not skip this step, since the pack overwrites the given textures and uses the original ones for nodes/items not present in the texture pack.)
making your textures minimal and asking the players to use texture packs, requires the players to know exactly what textures they would need get and how to precisely name every image file.
i don't think anyone would do this, so the better solution is to provide a prepared texture pack(s) for players to download.
this would reduce the file size of texture downloads from the server, but not the number of files. not sure how much the loading time would benefit from this.
Really good infomation. Now what I'm thinking is this: Partition the world such that we have one common area and then individual areas for each player. In the common area, everything is protected but can be overridden if a player protects a certain area. This could maybe be earned with the progression system (e.g. Player must earn certain achievements to be able to claim his/her spot in the common area). Then each player has his/her own randomized area (all or mostly underground). Either randomly and/or manually by the player, each of these areas are 'un-generated'. Each of these areas would be surrounded by unbreakable solid opaque barrier. Think something like Diablo randomized dungeons/caves but then everyone has a common town/overworld. Previously I thought that limiting the world size to 15000 would help performance but now I don't think sofirefox wrote: ↑Thu Jan 07, 2021 16:306a. it is possible un-generate mapchunks, which will then automatically regenerate when a player walks into vision range.
however, the newly generated chunk will not fit with the old chunks, so not only biomes but also terrain can be completely different and create a sharp edge at mapchunk borders.
this is less noticeable underground, but would still create some odd cave ends.
...
6b. pretty sure this is possible. the default spawn function randomly drops the player within a certain area upon death. servers with a set spawnpoint and /spawn command use a mod to overwrite that function.
i remember reading that one of those mods can set individual spawn points (or random spawn functions) for individual players.
...
6c. that's highly complex and i'm not sure even possible.
but world sections can be done with coordinate restrictions on biome definitions.
i don't think you can set 'void', but you could slice the world by filling lines (or rather 2d layers) with air.
although you have to deal with leaking liquids afterwards.
custom made indestructible glass would work.
...
13. usually protection mods prevent access from all except the owner. maybe it is possible to reverse this feature to only allow action within protected areas.
but the problem is that the player would randomly drop protections wherever they go, and a new player may be unable to do anything since they cannot gather craft materials for protection items without owning protected areas first.
Yeah, I was hoping someone else had already done it but I haven't seen anything yetfirefox wrote: ↑Thu Jan 07, 2021 16:307. changing textures is easy, just replace the textures and make sure they have the same name. (or put the new texture names into the node definitions)
pretty sure wireless power was available in some mod... it was a simple one with switches that don't require cables, so definitely not mesecons.
Unified Inventory shows recipes as groups if the recipe is set up that way. I can probably rip the code from there so maybe instead of putting in the recipe, you drop the final product in the recipe slot and the autocrafter will let you choose which recipe you want to use for it. Like above, cool idea in theory but may be more work that it is worth to get it finalized
Good ideas. I'll look dig into thatfirefox wrote: ↑Thu Jan 07, 2021 16:3010. if i remember correctly, on Xanadu the cap is required to make purple moss, can be crafted into spores to grow the small poisonous shrooms (which can be turned into red dye), pores negate fall damage (and disable jumping) and can be burned as fuel, and the trunk is the whitest wood available.
not sure how much of that is server exclusive, but i guess most of it is in the ethereal mod.
i don't know any outside mods that use them, but if you have any potions mods you could alter the recipes to use those mushrooms.
I'm sure I can figure it out from the code. This is on the list I suppose to fish for an already existing solution
Yeah, that's kind of what I was thinking too. I can probably look at the code for Moreblocks and the saw table.firefox wrote: ↑Thu Jan 07, 2021 16:3014. not sure if restricting recipes is possible, but you could implement different methods of crafting.
by default we have "crafting" and "cooking". the furnace is used for "cooking" and the same (or similar) method can be used to create new items that utilise new methods such as "fermenting", "drying" or "freezing".
for different crafting tables, there used to be a mod that adds bigger crafting grids with more complex recipes, but then the bigger tables can also do all the smaller recipes, so it's not fully exclusive.
The mapgen settings I've seen are in world.conf but that doesn't include decoration settings (at least that I've seen). Since now I know the term (decoration) I can probably find what I need in Ethereal
Re: Thinking about setting up a public server
every game needs a mapgen mod. it contains a 'mapgen. lua' file with biome definitions and decorations.
not sure where build-in MTG is located, but you can also download a copy from github and look at the mapgen file.
it's in the 'default' mod.
Ethereal is just a mapgen mod, so the file is right there.
sometimes this can also be split up in different files, like from different mods.
biome definitions have to be put first, since the decorations depend on them.
Ethereal has lots of trees and shrubs, so they may be sorted into separate files.
in MTG, everything is contained in a large single file.
✨🏳️🌈♣️✨
- Linuxdirk
- Member
- Posts: 3219
- Joined: Wed Sep 17, 2014 11:21
- In-game: Linuxdirk
- Location: Germany
- Contact:
Re: Thinking about setting up a public server
The world is very small already, why limit it even more? The only valid reason might be server storage - which in reality isn't a real issue nowadays anymore.
You could add a compatibility mod redefining the needed items to use specific textures by default, but in the end texture packs are client-side. You should not care too much about this. players will use whatever textures they like.
No, but yes :)
When using the well-known areas mod you can set areas and define if players can interact in this areas, but by default there is no way to have it the other way round.
On my testing server I circumvented this by adding an area with my admin account and then stopped the server and manually edited the areas file so the area spans from -31000,-31000,-31000 to 31000,31000,3100 without any permissions for anyone. So no-one can interact with the whole world.
Now it is possible to set sub-areas to that area where players are allowed to interact.
Re: Thinking about setting up a public server
I had the misunderstanding that bigger world size would use more proc/mem on the server. I know better than that now.
I'm trying to 'cheat the system' so to speak. I was wondering if I could have users download a texture pack and install that to reduce data transmission while connected. I was also wondering if skins could be done the same way
I think I can accomplish this by editing the areas mod or making a separate mod that depends on areas. I would protect an area but allow users to override a portion of that area. Maybe instead of protecting it themselves I could have a vendor that each user purchases predefined portions and that mod would change the protection for the user's areaLinuxdirk wrote: ↑Thu Jan 14, 2021 09:36No, but yes :)
When using the well-known areas mod you can set areas and define if players can interact in this areas, but by default there is no way to have it the other way round.
On my testing server I circumvented this by adding an area with my admin account and then stopped the server and manually edited the areas file so the area spans from -31000,-31000,-31000 to 31000,31000,3100 without any permissions for anyone. So no-one can interact with the whole world.
Now it is possible to set sub-areas to that area where players are allowed to interact.
I was reading last night on github (gitlab?) the discussion on a single world having multiple dimensions or being able to send a player to another server. Now this is exactly the kind of thing I want to set up on my server :D
Re: Thinking about setting up a public server
what is the IP of this server ? I think these ideas sound really cool...
Re: Thinking about setting up a public server
I don't have it set up yet. I'm still in the planning phase. It doesn't look like I'm going to be able to implement the separate areas/dimensions like I wanted. I could probably use it but I think many other mods I want to use will not be compatible with it (e.g. Ethereal NG)
Here is my list so far and looking at this... it's more work than I believed when I first started :-/
Here is my list so far and looking at this... it's more work than I believed when I first started :-/
Modlist:
Ethereal - viewtopic.php?f=11&t=14638&p=367986
3d Armors - viewtopic.php?t=4654
Armor Addons - viewtopic.php?f=9&t=19784
MoreOres - viewtopic.php?t=549
Titanium - viewtopic.php?t=3113
Mese Crystals - viewtopic.php?f=11&t=13094&hilit=mese
Techpack - viewtopic.php?f=9&t=19784
CaveRealms Lite - viewtopic.php?f=11&t=18413&hilit=caverealms
Nether - viewtopic.php?f=11&t=5790
Travelnet unless I can find something I like better for teleporting
MoreBlocks - viewtopic.php?id=509
A skins mod (uskins?)
A protection mod (I might make my own based on Areas)
BalloonBlocks - viewtopic.php?t=24911
Farming Redo - viewtopic.php?f=11&t=9019&hilit=farming
Mobs Redo (animals, monsters) - viewtopic.php?f=11&t=9917&hilit=mobs
More Blocks - viewtopic.php?f=11&t=509&hilit=more+blocks
Timespeed - viewtopic.php?f=11&t=19311&hilit=timespeed
Unified Inventory - viewtopic.php?f=11&t=12767&hilit=unified
Regional Weather Bundle - viewtopic.php?f=9&t=24569&hilit=weather
Lightning - viewtopic.php?f=11&t=13886&hilit=weather
X-Decor - viewtopic.php?t=12534
Ropes - viewtopic.php?f=11&t=16559&hilit=ropes
Considering:
Space - viewtopic.php?t=14497
Ambience Lite - https://content.minetest.net/packages/T ... /ambience/
Hallelujah Mountains [cloudlands] - viewtopic.php?f=11&t=20257
Lucky Blocks (and maybe disable dungeons) - viewtopic.php?f=11&t=13284
Quartz - viewtopic.php?f=11&t=5682&hilit=quartz
WorldEdit (for admins only) - viewtopic.php?f=11&t=572&hilit=worldedit
TODO:
Develop progression for tools and armor
Limit how far water and lava are able to fall
Add item and GUI stuff for advmarkers
Disable chopping down trees by hand
Add docs for mods that don't have them
Add/Complete awards/achievements
Protect area around spawn but allow players to take over protection by protecting it themselves
Figure out the waypoint/markers mod to use
Figure out how to fix magic potions so that flying works
Rework autocrafters so that you choose the recipe from a list instead of inputting the recipe
Reduce density of rain/snow/wind
Split recipes between different crafting tables
Figure out how to get Unified Inventory to show which crafting table is needed and display the mod name in brackets
Replace tubelib textures with something less... wood
Develop protection permissions - forbidden = no one can enter protected area, even air, private = like current protection, public = anyone can use nodes (crafting tables, enchanting table, open doors) but cannot build/mine/move nodes
Progression system ideas:
On first join, a timer will count down to survival start. During countdown, player will take no damage from mobs nor other players nor will he/she lose satiation
Player must progress through each level with no way to skip
Player will not be able to equip or use armor/weapons/tools higher than his/her level
Player will need to earn a certain level before being able to override a portion of protection near spawn
Player will need to earn a certain level to be able to craft/use protection nodes
Players caught cheating/griefing/pharming noobs will be reset
Who is online
Users browsing this forum: No registered users and 28 guests