Beacon icon indicating copy to clipboard operation
Beacon copied to clipboard

Thoughts on supporting multiple games

Open thommcgrath opened this issue 4 years ago • 3 comments

The main problem with supporting multiple games is data structures and organization. Maybe the first step is identifying the tables that are game-specific so they could potentially be moved to their own schema? I've never used multiple schemas in Postgres before, so I'm not confident this is the right approach. Scoping problems come to mind.

Regardless, the following tables (and views) are currently specific to Ark, even if they aren't used:

blueprints
computed_engram_availabilities
crafting_costs
creature_engrams
creature_stats
creatures
diet_contents
diets
engrams
game_variables
ini_options
loot_sources
maps
objects
spawn_point_limits
spawn_point_set_entries
spawn_point_set_entry_levels
spawn_point_set_replacements
spawn_point_sets
spawn_points

The mods table is questionable. Both of the following scenarios make sense:

  1. mods is global with a reference to a global games table.
  2. Each schema has its own mods table, which would have a column to store the game it belongs to.

Not sure which would be better. Option 1 has the advantage of guaranteeing workshop_id uniqueness. However, mods for other games may not even have a workshop_id column, and might need other columns to make sense. That would give option 2 the advantage. But it would mean every mod would require its own confirmation process. Which might not be a bad thing, even though Steam is likely the only mod provider for the foreseeable future. Hard to predict what would be needed of this table.

thommcgrath avatar Aug 10 '20 06:08 thommcgrath

Not sure if I'm allowed to post here, but if you do end up accomplishing this huge milestone for say, ATLAS, I'd definitely buy it. I'm sure others would appreciate it as well. The ease of use your program provides is awesome. (>^^)> Beacon: ATLAS Edition <(^^<)

BraniyaKz avatar May 03 '21 16:05 BraniyaKz

Absolutely allowed to post here. This problem will need to be solved for Ark 2, and the clock is ticking. Atlas has a small market share, but shares a lot in common with Ark, so I'm not sure if I'd do Atlas. I've been exploring the idea of supporting 7 Days to Die or Rust, but neither seem to have the level of customization that Ark has. So all I can say right now is I'm not sure what the future holds.

thommcgrath avatar May 03 '21 16:05 thommcgrath

Thanks for the reply! Looking forward to Ark 2! And if I had to vote on the two options you're looking at above, I'd say that each schema having its own mods table sounds more organized, but overall the choice is yours, and both methods are okay.

BraniyaKz avatar May 06 '21 15:05 BraniyaKz