Page MenuHomeSchine - Phabricator

Starmade | creating a new universe sets all blueprints to enemyusable/others and owner to none
Confirmed task for development, HighPublic

Description

If you go and create a new world all Blueprints will be set to "others" and "enemy usable" + they will lose their owner.

Created permission test in world0


then created new world and this happened

The DEFAULT_BLUEPRINT_ENEMY_USE = false from the server.cfg has no effect on this.

Putting this on high since it can break worlds if all titan blueprints are auto spawnable

Details

Commits
Restricted Diffusion Commit
Task Type
Bug
Testing Results
Affected Gamemode(s)
Single and Multi
Reproducible
Yes
Last tested (version)
0.19439 (Dev)
Category
Engine
First occurrence (version)
0.1882
Hardware/Software/System
OS-Specific
No
Hardware-Specific
No
Video Card Vendor
uncertain
Serverconfig (server.cfg)
<replace this line with the file content>
Clientconfig (settings.cfg)
<replace this line with the file content>

Event Timeline

lancake updated the task description. (Show Details)Jun 8 2015, 9:12 AM
lancake added a project: Issue Navigation.
lancake changed Category from none/unspecified to Engine.
lancake changed Affected Gamemode(s) from none/unspecified to Single and Multi.
lancake set First occurrence (version) to 0.1882.
lancake changed Reproducible from uncertain to Yes.
lancake set Last tested (version) to 0.19247 (Dev).
lancake edited a custom field.
lancake edited Serverconfig (server.cfg). (Show Details)
lancake edited Clientconfig (settings.cfg). (Show Details)
lancake added a subscriber: lancake.
lancake created this task.
lancake raised the priority of this task from to High.
lancake changed the task status from Open to In Queue (Game).Jun 8 2015, 2:56 PM
Restricted Application edited projects, added Game Development, Starmade; removed Issue Navigation. · View Herald TranscriptJun 8 2015, 2:56 PM
schema added a subscriber: schema.Jun 12 2015, 4:17 PM

The game doesn't know who owns a blueprint. It would make no sense to put it into the blueprint itself, as then i couldnt be spawned when downloaded and would be easily changable anyway. To use the same catalog in another world, copy over the catalog.cat file. Setting them to enemy usable might be a bug though. What is the server setting for that?

AndyP added a subscriber: AndyP.Jun 27 2015, 9:51 AM

The default is:

DEFAULT_BLUEPRINT_ENEMY_USE = true //Default option to use uploaded ships in waves

However, setting this to false does still set all blueprints to "enemy usable" on first load of the world.

It appears that only the first blueprint (aka the cheapest, since they are sorted by price) is set to enemy usable when "DEFAULT_BLUEPRINT_ENEMY_USE" is false. @schema might be aware of why this was implemented but I'm not sure.

AndyP added a comment.Jun 29 2015, 4:32 PM

got to retest that then,
in all former server-resets we had them all checked on first loading of the world.

This MAY be related to the fact you have to start the server once, to generate a config, it actually starts on default settings then.

Possibly this confused the result.

AndyP changed the task status from In Queue (Game) to Open.Jun 29 2015, 4:32 PM

Back to testing

Restricted Application edited projects, added Issue Navigation; removed Game Development. · View Herald TranscriptJun 29 2015, 4:32 PM
SmilingDemon changed the task status from Open to In Queue (Game).Jun 30 2015, 12:13 PM

Ok! Tested again

How to reproduce

1 -empty the blueprint folder then put in a couple of none default blueprints
2 -start the game and use reset all world to make a new universe
3 -open the catalog in game and check the settings on the inserted blueprints
will look like

4 -Default blueprints wont be listed anylonger after reset

5 -after explanation that the settings for this is stored with the universe files (makes sense) i would have assumed that:

  • all blueprints are set to admin only use and not to enemy and other on default
  • that maybe all from blueprints-default get copied over and set to enemy use (or be split into trade/pirate/derelict what ever later) but those do not show up at all right now
Restricted Application edited projects, added Game Development; removed Issue Navigation. · View Herald TranscriptJun 30 2015, 12:13 PM

sorry .. slight correction here

the enemy usable is gone when the server setting is put to false ...

but still "other" and the lack of any default blueprints is a bug

SmilingDemon set Task Type to Bug.Jun 30 2015, 12:35 PM
SmilingDemon changed Last tested (version) from 0.19247 (Dev) to 0.19295 (Dev).
SmilingDemon set OS-Specific to No.
SmilingDemon set Hardware-Specific to No.
SmilingDemon set Video Card Vendor to uncertain.
AndyP added a comment.Jun 30 2015, 1:10 PM

Well, as they all loose their owner, it would leave you without access to blueprints when they have "other" revoked.

This is "good" for single-player and new players not knowing about admin status and how to use it,
but for "servers" this is bad, as you have to manually remove the "other" flag from several hundred blueprints before any player should be able to connect to avoid blueprint stealing.

Can we possibly get a:
Default permission set for all blueprints that "pop in" for the server? (new world, or manually moving blueprints in the folder) in the config?
It could also be "binary" like,
1 = Faction
2 = Homebase
4 = Other
8 = Enemy usable

Example:
3 would then state: Faction + Homebase checked

This would allow a later reuse when other options come up or options get renamed.

SmilingDemon removed SmilingDemon as the assignee of this task.
schema added a commit: Restricted Diffusion Commit.Jul 9 2015, 3:55 AM
schema changed the task status from In Queue (Game) to Resolved by committing Restricted Diffusion Commit.
Restricted Application edited projects, added Quality Assurance; removed Game Development. · View Herald TranscriptJul 9 2015, 3:55 AM
schema added a comment.Jul 9 2015, 3:56 AM

create world now has the option to copy over teh catalog of another world. Also, the server config has now settings to define a default handling for entries that arent in the catalog

DEFAULT_BLUEPRINT_ENEMY_USE = false Default option for blueprints not in catalog yet
DEFAULT_BLUEPRINT_FACTION_BUY = false
Default option for blueprints not in catalog yet
DEFAULT_BLUEPRINT_OTHERS_BUY = false Default option for blueprints not in catalog yet
DEFAULT_BLUEPRINT_HOME_BASE_BUY = true
Default option for blueprints not in catalog yet

These appear to work, not entirely sure about this copy over to another world feature, or how it would influence the settings above. Will have to check that out later, or someone else can do that instead.

lancake changed Last tested (version) from 0.19295 (Dev) to 0.19314 (Dev).Jul 9 2015, 7:37 PM
SmilingDemon changed the task status from Resolved to In Queue (Game).Jul 10 2015, 5:45 PM

the settings in server.cfg are taken in any case
(which is good so you at least can prevent them from all beeing assigned to pirates and everyone)

  • i could not make the copy function work. on every attempt the server.cfg settings took over (singleplayer game start)
  • the function "Tools -> Reset all worlds" only resets the currently to default set world it seems (which is OK, just change the description on the Reset world function)
Restricted Application edited projects, added Game Development; removed Quality Assurance. · View Herald TranscriptJul 10 2015, 5:45 PM
AndyP shifted this object from the S1 Public space to the S3 Starmade space.Aug 11 2015, 10:26 PM
AndyP changed the edit policy from "Starmade (Project)" to "All Users".

the settings in server.cfg are taken in any case
(which is good so you at least can prevent them from all beeing assigned to pirates and everyone)

  • i could not make the copy function work. on every attempt the server.cfg settings took over (singleplayer game start)
  • the function "Tools -> Reset all worlds" only resets the currently to default set world it seems (which is OK, just change the description on the Reset world function)

Blueprints will still lose their owner, so that's the third remaining issue.

lancake claimed this task.Sep 21 2015, 10:48 AM
lancake changed Last tested (version) from 0.19314 (Dev) to 0.19439 (Dev).Sep 26 2015, 10:55 AM
Benevolent27 added a subscriber: Benevolent27.EditedAug 14 2016, 7:55 AM
In T74#2849, @schema wrote:

The game doesn't know who owns a blueprint. It would make no sense to put it into the blueprint itself, as then i couldnt be spawned when downloaded and would be easily changable anyway. To use the same catalog in another world, copy over the catalog.cat file. Setting them to enemy usable might be a bug though. What is the server setting for that?

Thank you for this information. We had an issue on LVD where we had to do a new install, but the server had been run without the blueprints present once. Then when ran with the blueprints copied over, none of the blueprints had owners anymore. Copying the catalog.cat file from the backup world fixed the problem.

AndyP changed the task status from In Queue (Game) to In Queue.Mar 10 2017, 5:15 PM
Restricted Application added a project: Engine. · View Herald TranscriptMar 10 2017, 5:15 PM
AndyP moved this task from Backlog / Unclassed to General on the Engine board.Mar 24 2017, 9:28 PM
AndyP edited projects, added Engine (General); removed Engine.