anegostudios / VintageStory-Issues

Vintage Story's public issue tracker for reporting bugs, crashes and the like
46 stars 16 forks source link

Modmaker doesn't work #4251

Open Shadeloid opened 1 month ago

Shadeloid commented 1 month ago

Game Version

1.20 pre.5

Platform

Windows

Modded

None

SP/MP

None

Description

When trying to use modmaker to save my local changes to files and export them as mods, it stops at downloading the files and doesn't proceed.

How to reproduce

  1. Open modmaker
  2. Press 1
  3. Press ENTER
  4. Console disappears and nothing is done.

Screenshots

imagem imagem

Logs

Log

DejFidOFF commented 1 week ago

Confirmed. 1.20pre7

Microsoft Windows [Version 10.0.22631.4317] (c) Microsoft Corporation. Všechna práva vyhrazena.

c:\Games\Vintagestory1.20>modmaker Mod Maker 3000 (TM)

Please select an option: [1] Create mod from changed vanilla assets. [2] Convert vanilla assets to standard JSON. [3] Restore vanilla assets and revert all changes. [4] Delete modmaker temp folders. 1 This command line tool detects changes you made to any .json file in your games asset folder, compares them to the original files and generates a mod from your changes. This way, when you update the game, your local changes aren't lost. Please notice: Non .json are not checked! The folders sounds, music and textures are not checked either!

Detected game version is 1.20.0-pre.7. Hit enter if that is correct or type in actual version Version [1.20.0-pre.7]: Modded folder is c:\Games\Vintagestory1.20\assets No cached data found at C:\Users\DejFidOFF\AppData\Local\Temp\VintageStoryModMaker\1.20.0-pre.7\assets. Downloading vanilla assets for v1.20.0-pre.7... Exception thrown during program execution. Sorry! :< Newtonsoft.Json.JsonSerializationException: Cannot deserialize the current JSON array (e.g. [1,2,3]) into type 'System.Collections.Generic.Dictionary`2[System.String,Vintagestory.API.Net.GameReleaseVersion]' because the type requires a JSON object (e.g. {"name":"value"}) to deserialize correctly. To fix this error either change the JSON to a JSON object (e.g. {"name":"value"}) or change the deserialized type to an array or a type that implements a collection interface (e.g. ICollection, IList) like List that can be deserialized from a JSON array. JsonArrayAttribute can also be added to the type to force it to deserialize from a JSON array. Path '', line 1, position 1. at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.EnsureArrayContract(JsonReader reader, Type objectType, JsonContract contract) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateList(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, Object existingValue, String id) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal(JsonReader reader, Type objectType, JsonContract contract, JsonProperty member, JsonContainerContract containerContract, JsonProperty containerMember, Object existingValue) at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader reader, Type objectType, Boolean checkAdditionalContent) at Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader reader, Type objectType) at Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader, Type objectType) at Newtonsoft.Json.JsonConvert.DeserializeObject(String value, Type type, JsonSerializerSettings settings) at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value, JsonSerializerSettings settings) at Newtonsoft.Json.JsonConvert.DeserializeObject[T](String value) at ModMaker.ModMaker.EnsureAssetsAvailable(String vanillaAssetsFolder) in C:\Users\Tyron\Documents\vintagestory\game\ModMaker\ModMaker.cs:line 592 at ModMaker.ModMaker.CreateModByPatching(String moddedFolder) in C:\Users\Tyron\Documents\vintagestory\game\ModMaker\ModMaker.cs:line 269 at ModMaker.ModMaker.Run(String[] args) in C:\Users\Tyron\Documents\vintagestory\game\ModMaker\ModMaker.cs:line 66