CRASH value must be dictionary in property tree at root

Place to get help with not working mods / modding interface.
User avatar
bobingabout
Smart Inserter
Smart Inserter
Posts: 7352
Joined: Fri May 09, 2014 1:01 pm
Contact:

Re: CRASH value must be dictionary in property tree at root

Post by bobingabout »

Bilka wrote:
bobingabout wrote:I've actually had people tell me just how much they hate you, because when they ask for help, you just respond with a wiki link.
That's news to me, thanks for telling me; I'll copy paste the answer from the wiki from now on. That will be just as fast for me and hopefully more helpful for people who dont like to read the wiki.
I'm not saying you should stop posting wiki links, they hold useful information. But I also agree that a post that contains a wiki link and nothing else when you're looking for help can be frustrating, especially when you've looked at that page and didn't find your answer (even if it is because you didn't read the page fully or thoroughly)

I guess a link and a copy/paste of the specific information to answer the question would be the most ideal solution, but it's up to you if you feel the need to do that.
eradicator wrote:@bob: What's wrong with github & you? :D (Link to answer is fine :P)
It's just... I'd rate it's user friendliness about a 1 out of 10.
The one useful thing it has going for it is that you can look at the code online... and that's about as useful as just opening a specific file and reading through it, there's absolutely no IDE assisted tools to help you navigate through code, which is kind of important on a project the size of Factorio's source.
and when it comes to branches... there's literally a "you have to do this part in a browser" and a "you have to use a custom command line interface with custom commands for this part". I'm honestly amazed nobody has written a front end GUI to make it easier yet. It's just nasty, I hate it.
I basically just see it as a necessary evil for when I want to edit, or even just read the game's source. And when it comes to entering commands, if I can't figure out how to do it with my notes on commands I've used previously, I usually just ask someone what the command to do that function is, because I find it confusing.
Creator of Bob's mods. Expanding your gameplay since version 0.9.8.
I also have a Patreon.

Nexela
Smart Inserter
Smart Inserter
Posts: 1828
Joined: Wed May 25, 2016 11:09 am
Contact:

Re: CRASH value must be dictionary in property tree at root

Post by Nexela »

bobingabout wrote: and when it comes to branches... there's literally a "you have to do this part in a browser" and a "you have to use a custom command line interface with custom commands for this part". I'm honestly amazed nobody has written a front end GUI to make it easier yet. It's just nasty, I hate it.
I basically just see it as a necessary evil for when I want to edit, or even just read the game's source. And when it comes to entering commands, if I can't figure out how to do it with my notes on commands I've used previously, I usually just ask someone what the command to do that function is, because I find it confusing.
Gitkraken is a VERY easy to use GUI for git(hub)

Visual Studio has decent support for git(hub)

Visual Studio Code has awesome support for git(hub) and even awesomer support with the git lens extension.

Just about the "only" thing that has to be done in the browser is creating the initial repository (even "forking" an existing project is not necessary)

DasNasu
Burner Inserter
Burner Inserter
Posts: 6
Joined: Sun Jan 13, 2019 4:55 pm
Contact:

Re: CRASH value must be dictionary in property tree at root

Post by DasNasu »

bobingabout wrote:
eradicator wrote:@bob: What's wrong with github & you? :D (Link to answer is fine :P)
It's just... I'd rate it's user friendliness about a 1 out of 10.
The one useful thing it has going for it is that you can look at the code online... and that's about as useful as just opening a specific file and reading through it, there's absolutely no IDE assisted tools to help you navigate through code, which is kind of important on a project the size of Factorio's source.
and when it comes to branches... there's literally a "you have to do this part in a browser" and a "you have to use a custom command line interface with custom commands for this part". I'm honestly amazed nobody has written a front end GUI to make it easier yet. It's just nasty, I hate it.
I basically just see it as a necessary evil for when I want to edit, or even just read the game's source. And when it comes to entering commands, if I can't figure out how to do it with my notes on commands I've used previously, I usually just ask someone what the command to do that function is, because I find it confusing.
I don't get your problem really. Yeah it's definitly some kind of taste what you prefer and what not, but a GUI does actually exist. Maybe you will change your mind if you took a look at http://desktop.github.com

But now to my real problem. I didn't saw the need to open a new thread, addressing the almost identical issue. I'm actually learning to befriend with the factorio-api, but i seem to miss something. A few days my mod works just fine, and at the moment a tried to add a new type of wagon (by thinking about it an just using the "cargo-wagon" protoype) factorio crashes at startup with "Value must be a dictionary in property at ROOT.cargo-wagon.dasnasu_br01_tender.pictures". Result to me: read everything twice, looking again at the prototype of cargo-wagon provided by factorio's base, but sadly i didn't find any issues with my formating of the pictures block. The code of the dasnasu_br01_tender entity looks like the following:

Code: Select all

data:extend({
	{
		type = "cargo-wagon",
		name = "dasnasu_br01_tender",
		icon = "__DasNasu_Trains__/graphics/icons/entities/steam/tender/dn_br01.png",
		icon_size = 128,
		flags = {
			"placeable-neutral",
			"player-creation",
			"placeable-off-grid"
		},
		inventory_size = 10,
		minable = {
			mining_time = 1,
			result = "dasnasu_br01_tender"
		},
		max_health = 250,
		corpse = "medium_remnants",
		dying_explosion = "medium_explosion",
		collision_box = {{-0.6, -2.4}, {0.6, 2.4}},
		selection_box = {{-1, -2.703125}, {1, 3.296875}},
		vertical_selection_shift = -0.796875,
		weight = 1000,
		max_speed = 1.5,
		braking_force = 3,
		friction_force = 0.50,
		air_resistance = 0.01,
		connection_distance = 3,
		joint_distance = 4,
		energy_per_hit_point = 5,
		wheels = standard_train_wheels,
		resistances = {
			{
				type = "fire",
				decrease = 15,
				percent = 50
			},
			{
				type = "physical",
				decrease = 15,
				percent = 30
			},
			{
				type = "impact",
				decrease = 50,
				percent = 60
			},
			{
				type = "explosion",
				decrease = 15,
				percent = 30
			},
			{
				type = "acid",
				decrease = 10,
				percent = 20
			}
		},
		pictures = {
			layers = {
				{
					priority = "very-low",
					slice = 1,
					width = 128,
					height = 128,
					direction_count = 8,
					allow_low_quality_rotation = true,
					filenames = {
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_0.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_1.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_2.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_3.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_4.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_5.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_6.png",
						"__DasNasu_Trains__/graphics/entities/steam/tender/br01/dn_br01_7.png"
					},
					line_length = 1,
					lines_per_file = 1
				}
			}
		},
		rail_category = "regular"
	}
})
its btw the only entity in this whole file.

Any point to the right direction would be very handy c:

Edit: corrected some missspellings, didn't fix the issue
Every good story ends with System.exit(0);

Bilka
Factorio Staff
Factorio Staff
Posts: 3308
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: CRASH value must be dictionary in property tree at root

Post by Bilka »

I don't encounter the issue with the code you pasted in the post here.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.

DasNasu
Burner Inserter
Burner Inserter
Posts: 6
Joined: Sun Jan 13, 2019 4:55 pm
Contact:

Re: CRASH value must be dictionary in property tree at root

Post by DasNasu »

So it could be a hickup by factorio? If you say you can't encounter any issues in my code, i presume my code is correct and fine?

Edit: I copied the cargo-wagon entity and just replaced the name of it. the error still persists. so either its a fail by factorio, or somewhere else in my code. but how could i easily debug about 70 files of code to search where the error could be?
Every good story ends with System.exit(0);


Post Reply

Return to “Modding help”