Mount&Blade Module System Manager {0.4.7} | By Swyter

sphere

Grandmaster Knight
M&BWB
Best answers
0
Lumos said:
This means much when said by you. This is quite buggy, though. The "Untitled Document" title never changes, I haven't patented the company name (:razz:), and I haven't given credit to some people who made the basic webbrowser code I used and extended. But the other stuff (apart from the browser core, I mean) are completely mine, from scratch.
And yeah, I love Visual Studio. :grin:
When you learn to hate visual studio after the love stage, (but kept using it coz you can't live without it), welcome to coding 201  :mrgreen:

btw, I use visual studio + visual assist + parts of iron python demo for modding mount and blade. (yep, hate it :wink: )
 

Jerkuh

Knight
WBNW
Best answers
0
I found some points to look at.

The first one is that when i want to op the module folder he asks where it is but i already said to the program where the module system folder is in.
In the module_info.py you can read the exact location of the module folder.

Second point is maybe an function that copies the files from the module folder to the dedicated server folder.
I am realy looking forward to that. And if your busy with making that copy button i would also prefer beside the play button an button that opens the batch file of choice to start the dedicated server.

As third and last i would like as people said before to create an modifiable list so you can create your own.
But now i got a problem, i need to use the header_common file. So when you add the function to make a modifiable list please add all .py files to be able to modify, if it is posible let the program scan for all the py files so that i can also add my own py files in the list.

This to ideas will make my work for the mod im creating right now (Heroes and Warriors) much easier becouse i constantly need to test the mod with the dedicated server tool.

For right now a big thanks for how far the tool is right now becouse it just makes it easier to work!
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Jerkuh said:
I found some points to look at.

The first one is that when i want to op the module folder he asks where it is but i already said to the program where the module system folder is in.
In the module_info.py you can read the exact location of the module folder.

Second point is maybe an function that copies the files from the module folder to the dedicated server folder.
I am realy looking forward to that. And if your busy with making that copy button i would also prefer beside the play button an button that opens the batch file of choice to start the dedicated server.

As third and last i would like as people said before to create an modifiable list so you can create your own.
But now i got a problem, i need to use the header_common file. So when you add the function to make a modifiable list please add all .py files to be able to modify, if it is posible let the program scan for all the py files so that i can also add my own py files in the list.

This to ideas will make my work for the mod im creating right now (Heroes and Warriors) much easier becouse i constantly need to test the mod with the dedicated server tool.

For right now a big thanks for how far the tool is right now becouse it just makes it easier to work!
1- This program reads the module path since the first alpha, it works fine for me so far, in case it cannot be found ask the user, that path will be saved in your registry until the path it's no more more, then asks again. Tested.

2- The compile button launches the first bat file found, edit it to run extra batch commands as moving files or starting server. As example this it's a possible one:
Code:
rem EXAMPLE BATCH FILE BY SWYTER
@echo off
@cls
@title Batch file by Swyter - Enjoy
@color 1f
@echo -Here we go Jerkuh!
@echo. 
python process_init.py
python process_global_variables.py
python process_strings.py
python process_skills.py
python process_music.py
python process_animations.py
python process_meshes.py
python process_sounds.py
python process_skins.py
python process_map_icons.py
python process_factions.py
python process_items.py
python process_scenes.py
python process_troops.py
python process_particle_sys.py
python process_scene_props.py
python process_tableau_materials.py
python process_presentations.py
python process_party_tmps.py
python process_parties.py
python process_quests.py
python process_info_pages.py
python process_scripts.py
python process_mission_tmps.py
python process_game_menus.py
python process_simple_triggers.py
python process_dialogs.py
python process_global_variables_unused.py
python process_postfx.py
@del *.pyc
echo.
echo ______________________________
echo.
echo Script processing has ended.
echo Press any key to copy server side files and run dedicated. . .
pause>nul
echo. 
echo -Copying server side module files and running dedicated
copy /y "C:\Program Files\Mount&Blade Warband\modules\SWC\*.txt" "C:\Program Files\Mount&Blade Warband Dedicated\modules\SWC\"

rem now we're going to start the server
start "C:\Program Files\Mount&Blade Warband Dedicated\mb_warband_dedicated.exe -r mycustomscript.ini -m Native"
Or, if you want, make a symbolic directory so the server module folder it's the same that the output one, open you console and type:
Code:
mkdir /J "folder-link-to-create" "folder to point"
Code:
mkdir /J "C:\Program Files\Mount&Blade Warband Dedicated\Modules\physical_SWC_Link_folder" "C:\Program Files\Mount&Blade Warband\Modules\SWC"
Contact me if you want another one.

3- The program generates the current list in real time. So it currently detects the _module???.py naming structure.
    I probably add the customize list option in the following version. But you can currently choose custom module_ files.
 

Jerkuh

Knight
WBNW
Best answers
0
Swyter said:
Jerkuh said:
I found some points to look at.

The first one is that when i want to op the module folder he asks where it is but i already said to the program where the module system folder is in.
In the module_info.py you can read the exact location of the module folder.

Second point is maybe an function that copies the files from the module folder to the dedicated server folder.
I am realy looking forward to that. And if your busy with making that copy button i would also prefer beside the play button an button that opens the batch file of choice to start the dedicated server.

As third and last i would like as people said before to create an modifiable list so you can create your own.
But now i got a problem, i need to use the header_common file. So when you add the function to make a modifiable list please add all .py files to be able to modify, if it is posible let the program scan for all the py files so that i can also add my own py files in the list.

This to ideas will make my work for the mod im creating right now (Heroes and Warriors) much easier becouse i constantly need to test the mod with the dedicated server tool.

For right now a big thanks for how far the tool is right now becouse it just makes it easier to work!
1- This program reads the module path since the first alpha, it works fine for me so far, in case it cannot be found ask the user, that path will be saved in your registry until the path it's no more more, then asks again. Tested.

2- The compile button launches the first bat file found, edit it to run extra batch commands as moving files or starting server. As example this it's a possible one:
Code:
rem EXAMPLE BATCH FILE BY SWYTER
@echo off
@cls
@title Batch file by Swyter - Enjoy
@color 1f
@echo -Here we go Jerkuh!
@echo. 
python process_init.py
python process_global_variables.py
python process_strings.py
python process_skills.py
python process_music.py
python process_animations.py
python process_meshes.py
python process_sounds.py
python process_skins.py
python process_map_icons.py
python process_factions.py
python process_items.py
python process_scenes.py
python process_troops.py
python process_particle_sys.py
python process_scene_props.py
python process_tableau_materials.py
python process_presentations.py
python process_party_tmps.py
python process_parties.py
python process_quests.py
python process_info_pages.py
python process_scripts.py
python process_mission_tmps.py
python process_game_menus.py
python process_simple_triggers.py
python process_dialogs.py
python process_global_variables_unused.py
python process_postfx.py
@del *.pyc
echo.
echo ______________________________
echo.
echo Script processing has ended.
echo Press any key to copy server side files and run dedicated. . .
pause>nul
echo. 
echo -Copying server side module files and running dedicated
copy /y "C:\Program Files\Mount&Blade Warband\modules\SWC\*.txt" "C:\Program Files\Mount&Blade Warband Dedicated\modules\SWC\"

rem now we're going to start the server
start "C:\Program Files\Mount&Blade Warband Dedicated\mb_warband_dedicated.exe -r mycustomscript.ini -m Native"
Or, if you want, make a symbolic directory so the server module folder it's the same that the output one, open you console and type:
Code:
mkdir /J "folder-link-to-create" "folder to point"
Code:
mkdir /J "C:\Program Files\Mount&Blade Warband Dedicated\Modules\physical_SWC_Link_folder" "C:\Program Files\Mount&Blade Warband\Modules\SWC"
Contact me if you want another one.

3- The program generates the current list in real time. So it currently detects the _module???.py naming structure.
    I probably add the customize list option in the following version. But you can currently choose custom module_ files.
1, that was probebly becouse i added a line of code in the module_info file that he didn't recognized it.
2, Thank you very much, i didn't thought of using batch codes for that. I dont know why but maybe because my head is so into the mod right now.
3, In the version i have of the manager the list only shows module_***.py files, i sometimes use file's like header_common.py also. I don't know if other people use the header_***.py files also, maybe because im very fixed add multi-player modding.
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Jerkuh said:
1, that was probebly becouse i added a line of code in the module_info file that he didn't recognized it.
2, Thank you very much, i didn't thought of using batch codes for that. I dont know why but maybe because my head is so into the mod right now.
3, In the version i have of the manager the list only shows module_***.py files, i sometimes use file's like header_common.py also. I don't know if other people use the header_***.py files also, maybe because im very fixed add multi-player modding.
1- Can you post here your module_info.py file? It can help me a lot.

2- Don't worry, I'm glad to help you  :smile:

3-  If you're using the current one, wait to the next one  :wink:. Will be full of new useful features suggested by you and the pals that wrote before... I didn't started to port SWC to warband, so I haven't thought yet about adding proper support... I can add some extra server buttons for MP devs.
 

Jerkuh

Knight
WBNW
Best answers
0
Swyter said:
1- Can you post here your module_info.py file? It can help me a lot.

2- Don't worry, I'm glad to help you  :smile:

3-  If you're using the current one, wait to the next one  :wink:. Will be full of new useful features suggested by you and the pals that wrote before... I didn't started to port SWC to warband, so I haven't thought yet about adding proper support... I can add some extra server buttons for MP devs.
Here is the module_info.py
Code:
scan_module_textures = 1

# Point export_dir to the folder you will be keeping your module
# Make sure you use forward slashes (/) and NOT backward slashes (\)

export_dir = "C:/Program Files/Mount&Blade Warband/Modules/Rank_System/"
#export_dir = "C:/Program Files/Mount&Blade/Modules/Native/"
I needed to add a line so he checks the textures.

But after all the great help im stuck at starting the dedicated from the compiling batch file. It just dousnt seem to start. It only opens a dos promt box that starts in the map of the module system :S
Here is what i made of the batch file:
Code:
@echo off
@cls
@title Batch file by Swyter - Enjoy
@color 1f
@echo -Here we go Jerkuh!
@echo.
python process_init.py
python process_global_variables.py
python process_strings.py
python process_skills.py
python process_music.py
python process_animations.py
python process_meshes.py
python process_sounds.py
python process_skins.py
python process_map_icons.py
python process_factions.py
python process_items.py
python process_scenes.py
python process_troops.py
python process_particle_sys.py
python process_scene_props.py
python process_tableau_materials.py
python process_presentations.py
python process_party_tmps.py
python process_parties.py
python process_quests.py
python process_info_pages.py
python process_scripts.py
python process_mission_tmps.py
python process_game_menus.py
python process_simple_triggers.py
python process_dialogs.py
python process_global_variables_unused.py
python process_postfx.py
@del *.pyc
echo.
echo ______________________________
echo.
echo Script processing has ended.
echo.
echo -Copying server side module files and running dedicated
copy /y "C:\Program Files\Mount&Blade Warband\modules\Rank_System\*.txt" "C:\Program Files\Mount&Blade Warband Dedicated\modules\Rank_System\"

start "C:\Program Files\Mount&Blade Warband Dedicated\mb_warband_dedicated.exe -r Sample_Deathmatch.txt -m Rank_System"

pause>nul
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Thank you for the info, I'll check again my home-made artesian python parser  :mrgreen:

The best thing it's make the symbolic folder, so you don't need to duplicate your module, write this in you command line, delete the current dedicated "Rank_System" module folder first:
Code:
mklink /J "C:\Program Files\Mount&Blade Warband Dedicated\modules\Rank_System\" "C:\Program Files\Mount&Blade Warband\modules\Rank_System\"
And here's the correct batch file:
Code:
@echo off
@cls
@title Batch file by Swyter - Enjoy
@color 1f
@echo -Here we go Jerkuh!
@echo.
python process_init.py
python process_global_variables.py
python process_strings.py
python process_skills.py
python process_music.py
python process_animations.py
python process_meshes.py
python process_sounds.py
python process_skins.py
python process_map_icons.py
python process_factions.py
python process_items.py
python process_scenes.py
python process_troops.py
python process_particle_sys.py
python process_scene_props.py
python process_tableau_materials.py
python process_presentations.py
python process_party_tmps.py
python process_parties.py
python process_quests.py
python process_info_pages.py
python process_scripts.py
python process_mission_tmps.py
python process_game_menus.py
python process_simple_triggers.py
python process_dialogs.py
python process_global_variables_unused.py
python process_postfx.py
@del *.pyc
echo.
echo ______________________________
echo.
echo Script processing has ended.
echo.
echo -Copying server side module files and running dedicated
cd "C:\Program Files\Mount&Blade Warband Dedicated\"
start mb_warband_dedicated.exe -r Sample_Deathmatch.txt -m Rank_System

pause>nul
Hope that helps  :idea:
 

Jerkuh

Knight
WBNW
Best answers
0
Thanks very much, now i dont have the many messed up windows i had before. Thank You.
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Jerkuh said:
Thanks very much, now i dont have the many messed up windows i had before. Thank You.
hehe :wink: Feel free to ask me for other problems/doubts you have. I love to help.
 
Best answers
0
I remember being Thorgrims test dummy for MBdev, and I grew quite fond of it.


This is a really awesome little app, saves tons of time. Just wanted to say thanks! :smile:
 

The Shadow

Recruit
Best answers
0
I love this thing, use it all the time, thanks for making it!

How about a button that you can set to open up OpenBRF?  That would be quite useful in my opinion. 

So what's next on the list?  A M&B IntelliSense?  :razz:
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
[anchor=needhelp]Magic Constructor  Need Help?

After some time without needing extra functionalities in my everyday use
I finally found a lifesaver way to skip the most hated/boring thing in module editing: *drum roll* Massive scene prop creation.

Specially when you're making a module as complex as Star Wars Conquest, sometimes you're finding yourself making the same manual repetitive tasks, with dozens of new props everyday. So here comes my Magic Constructor.



[list type=decimal]
[*]Align the OpenBRF and Notepad++ windows.
[*]Enable the Auto-Gathering and Auto-Creating.
[*]Now select a model from OBRF and press Ctrl+C to copy it in the clipboard.
[*]Press Ctrl+V in your props file and a new sprop entry will be created automatically, do it as many times as you want and save your precious time.
[/list]
PS: Don't forget to deactivate when finished.  :smile:



[anchor=v022]M&B MSYS MANAGER v0.2.2 RELEASED[/anchor]

✓ :: New handcrafted Icon.
✓ :: Fixed the height of the buttons so hidden ones under the combobox cannot be clicked by mistake.
  ✓ :: Added Help Tooltips to the most part of the buttons and input/check boxes. Stay with the mouse over to show.
  ✓ :: Now there's an option in the Configuration to Add the Opcode Header to the list. Mainly for reference.
    ✓ :: Included the Magic Constructor, an useful addon to create scene prop entries on-the-fly.

Click Here, or use the first post button for downloading a single, portable useful coding tool.
 

The Shadow

Recruit
Best answers
0
Awesome!  I forsee that being extremely handy!

Also, I still continue to urge you to add an OpenBRF button! 
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Bolkonsky said:
Awesome!  I forsee that being extremely handy!

Also, I still continue to urge you to add an OpenBRF button!

[anchor=v023]M&B MSYS MANAGER v0.2.3 RELEASED[/anchor]

✓ :: Now the Selected item in the list is saved and selected as default. No more "Animations" launched at start.
✓ :: Added "Start OpenBRF" option as requested by [Bolkonsky/COGlory]
        It toke me a little more to find a cool way to always reach the right program, that I resolved by checking various places.

        [!] Technically it will open you every program you have linked with the *.brf extension. I wanted to add drag-n-drop support.
            But you can do it by dragging brf files into the OpenBRF's window.

  ✓ :: Buttons repositioned.

Click Here, or use the first post button for downloading a single, portable useful coding tool.
 

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
Bolkonsky said:
You are the best!
hehe  :razz: Try it first. I'm not exactly sure that this (the OBRF button) is working as intended.
Also I've added some kind of rudimentary caching. So all the buttons should load faster now.

Can you confirm this?  :idea: