String Exporter
#1

Someone have a String Exporter like LodExporter? (In the sense that it is a console and does not have an interactive interface)

#2

2

#3

nah, that have a interface, i want one style like console or DLL for passing arguments...

#4

I'm not sure their is one but i think you could create one, from my understanding the arguments are passed from the tool to the exe that exports it.As always the c++ code is public for most of the Default Lc tools wouldn't be hard to write your own. Especially since the string structure is at most 5 parameters .

#5

i don't think there's any public but i can create one add me on discord Kravens#7608

 

#6


11 hours ago, kravens said:




i don't think there's any public but i can create one add me on discord Kravens#7608



 




My initial idea was to use an exe or some c# wrapper, but in the end I'm going to program it in lua, sorry for the inconvenience.

#7


On 3/29/2022 at 4:50 AM, nicolasg said:




My initial idea was to use an exe or some c# wrapper, but in the end I'm going to program it in lua, sorry for the inconvenience.




about the script, i guess it depends on which context you wanna use it... i suggest to write some simple code in c#. In the end we are talking about serialize/deserialize structure and binary read/write

#8


5 hours ago, Scura said:




about the script, i guess it depends on which context you wanna use it... i suggest to write some simple code in c#. In the end we are talking about serialize/deserialize structure and binary read/write




As I said I finally do in Lua, it has encoder problems for certain dictionaries but for what I needed it works...

2

#9

I would like bump this conversation to ask ... why not finish the exporter not only to export the strings, but classic lod too? Unfortunately i doesn't know lua, guess it may be a nice start to test it ? i will probably try

#10

at the time I based myself on ExportHandle.cs from LcDevPack_TeamDamonA, to try to create my own tool, I made the code to export the moonstone lod without problems, then I tried with the ItemAll and had problems, it seems that it is not 100% functional, if someone decompiles the lodexport from barunson or sends me the columns that I must export to create the ItemAll file, I can try to continue with tool creation...

by the way, this is the code i was doing for the itemALL...

Stream:write(IntToBytes(tonumber(ItemIndex)));
                Stream:write(IntToBytes(tonumber(Row.a_job_flag)));
                Stream:write(IntToBytes(tonumber(Row.a_weight)));--Stack/Weight
                Stream:write(IntToBytes(tonumber(Row.a_fame)));
                Stream:write(IntToBytes(tonumber(Row.a_level)));
                Stream:write(IntToBytes(tonumber(Row.a_flag)));
                Stream:write(IntToBytes(tonumber(Row.a_wearing)));
                Stream:write(IntToBytes(tonumber(Row.a_type_idx)));
                Stream:write(IntToBytes(tonumber(Row.a_subtype_idx)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item0)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item1)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item2)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item3)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item4)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item5)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item6)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item7)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item8)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item9)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count0)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count1)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count2)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count3)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count4)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count5)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count6)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count7)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count8)));
                Stream:write(IntToBytes(tonumber(Row.a_need_item_count9)));
                Stream:write(IntToBytes(tonumber(Row.a_need_sskill)));
                Stream:write(IntToBytes(tonumber(Row.a_need_sskill_level)));
                Stream:write(IntToBytes(tonumber(Row.a_need_sskill2)));
                Stream:write(IntToBytes(tonumber(Row.a_need_sskill_level2)));
                Stream:write(IntToBytes(tonumber(Row.a_texture_id)));
                Stream:write(IntToBytes(tonumber(Row.a_texture_row)));
                Stream:write(IntToBytes(tonumber(Row.a_texture_col)));
                Stream:write(IntToBytes(tonumber(Row.a_num_0)));
                Stream:write(IntToBytes(tonumber(Row.a_num_1)));
                Stream:write(IntToBytes(tonumber(Row.a_num_2)));
                Stream:write(IntToBytes(tonumber(Row.a_num_3)));
                --Stream:write(IntToBytes(tonumber(Row.a_num_4)));--yay or na?
                Stream:write(IntToBytes(tonumber(Row.a_price)));
                Stream:write(IntToBytes(tonumber(Row.a_set_0)));
                Stream:write(IntToBytes(tonumber(Row.a_set_1)));
                Stream:write(IntToBytes(tonumber(Row.a_set_2)));
                Stream:write(IntToBytes(tonumber(Row.a_set_3)));
                Stream:write(IntToBytes(tonumber(Row.a_set_4)));
                -----------------------------------------------------------
                local Text = tostring(Row.a_file_smc);
                if(Text == "" or Text == nil or Text == "nil")then
                    Debug.Print("'"..Text.."'");
                    for _ = 1, 64 do
                        Stream:write(IntToBytes(0));
                    end
                else
                    Stream:write(tostring(Text));
                    
                    for _ = 1, (64-(Text:len())) do
                        Stream:write(IntToBytes(0));
                    end
                end
                -----------------------------------------------------------
                local Text = (tostring(Row.a_effect_name));
                if(Text == "" or Text == nil or Text == "nil")then
                    Stream:write(IntToBytes(0));
                else
                    Stream:write(tostring(Text));
                    
                    for _ = 1, (32-(Text:len())) do
                        Stream:write(IntToBytes(0));
                    end
                end
                
                local Text = (tostring(Row.a_attack_effect_name));
                if(Text == "" or Text == nil or Text == "nil")then
                    Stream:write(IntToBytes(0));
                else
                    Stream:write(tostring(Text));
                    
                    for _ = 1, (32-(Text:len())) do
                        Stream:write(IntToBytes(0));
                    end
                end
                
                local Text = (tostring(Row.a_damage_effect_name));
                if(Text == "" or Text == nil or Text == "nil")then
                    Stream:write(IntToBytes(0));
                else
                    Stream:write(tostring(Text));
                    
                    for _ = 1, (32-(Text:len())) do
                        Stream:write(IntToBytes(0));
                    end
                end
                --------------------------------------------------------
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_0)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_0)));
                
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_0)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_1)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_2)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_3)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_4)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_5)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_6)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_7)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_8)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_index_9)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_0)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_1)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_2)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_3)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_4)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_5)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_6)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_7)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_8)));
                Stream:write(IntToBytes(tonumber(Row.a_rare_prob_9)));
                
                Stream:write(IntToBytes(tonumber(Row.a_rvr_value)));
                Stream:write(IntToBytes(tonumber(Row.a_rvr_grade)));
                Stream:write(IntToBytes(tonumber(Row.a_durability)));
                Stream:write(IntToBytes(tonumber(Row.a_castle_war)));

 



Forum Jump:


Users browsing this thread: 1 Guest(s)