Jump to content

seeh

Community Members
  • Posts

    1.050
  • Joined

  • Last visited

  • Days Won

    5

Posts posted by seeh

  1. ignoreInCompatibilityChecks is now set to false

     
    • This can be useful in certain scenarios, such as when a modder wants to sure that an older mod that has not been updated will not be used. Ultimately, the decision of whether to set "ignoreInCompatibilityChecks" to true or false depends on many preferences and the specific circumstances.
    • update two smiles
    • longer description for mute a player
    Assets 2
  2. importend update ! since the P is also lowercase in mod names.

    released this 12 Aug 23:26
     
    • please update your mod. to prevent seldom unusual shutdown behavior.
    • add 3 options to game name suggestions
    • don't suggest your ratedDefault for gameName if not checked in the options
    • update tooltip
  3. 1 hour ago, Atrik said:

    The autocivP_default_config.json       still contain other mods hotkeys.

    yes. thanks for writing but this is no problem

    1 hour ago, Atrik said:

    Enabling autocivP for me, means losing all

    no @Atrik these hotkeys are not activated (*1). this is optional. and there is also a filter for this in the options. may ask also : @AlexanDerGrosse, @Manimal or others how use it.

    I am very happy that I have been able to help you with this. Would like to make it as pleasant as possible :) Of course, especially for you ;)

    BTW for using most things here (90%) you don't need hotkeys at all.

    *1 It used to be like that, but it's not like that anymore, since a long time already.

  4. Improved Code Organization, Enhanced Configuration Performance, few Feature Updates

    a bit more order in the source code and a bit more performance during the configuration. a few feature updates

    hide commandHistory mapConfigProfileComands in not host state

    released this 11 Aug 13:28

    Updated the hideCommandHistory function

    This improvement hide the command history when they are not in a hosting role, providing a cleaner interface and reducing distractions.

    hope you enjoy these improvements and find them valuable. Thank you for your continued support and feedback!

    Assets 2
    • Like 1
  5. I'm trying to find out if I'm a host. a function does not return an error. But sometimes returns true when false would have been expected.

    works no problem. thank you (23-0811_1534-51)

    /**
     * Determine if the current player is the host player.
     */
    function isSelfHost(){ // maybe call it in a settimeout assync function
    	const selfGUID = Engine.GetPlayerGUID()
    	const firstPlayerGUID = Object.keys(g_PlayerAssignments)[0];
    
    	const selfPlayerAssignment = g_PlayerAssignments[Engine.GetPlayerGUID()];
    	const hostPlayerAssignment = g_PlayerAssignments[firstPlayerGUID];
    
    	g_selfInHost = selfGUID == firstPlayerGUID;
    
    	const bugIt = true // new implementation so i will watch longer
    	if(bugIt){ 
    		warn(`42: selfPlayerAssignment.name = ${selfPlayerAssignment.name}`);
    		warn(`43: hostPlayerAssignment.name = ${hostPlayerAssignment.name}`);
    		warn(`44: g_selfInHost => ${g_selfInHost}`);
    	}
    	warn(`45: g_selfInHost => ${g_selfInHost}`);
    	return g_selfInHost
    }

     

  6. case-insensitive auto-completion (e.g. user names and civilization names)is important for some users

    change to use case-insensitive auto-completion for user names and civilization names is important for some users

    BTW: No need for use a uppercase letter anymore.
    Use uppercase to temporarily reduce the sensitivity of the substitutions mechanism
    is still working but probably not needed for most users anymore

  7. 36 minutes ago, Gurken Khan said:

    I guess you mean a swastika. In the historical context it's not a Nazi symbol. I don't know what rules you are referring to. I don't know a country where this sign in historic context is forbidden.

    maybe it's still better to use a different symbol, because then it's less ambiguous for some people. and that would be a pity if it were misunderstood.

  8. v1.0.33

    more insensitive control of autocivP Folder-name  when 0ad starts
    use minutes in AFK represented using normal numbers instead of special characters.
    update tool-tip
    add in options don't use <icon> delimiter in chat
    add some options in options
    bit darker color for Game name Suggestion
    fix typo in option JSON
    suggest /pRestoreLastProfile ony when a profile is already used
    update welcome message

  9. BTW
    it is not possible to reload in 0ad javascript. Anyway, I haven't managed to do that (yet). But this workaround works.

    Maybe interesting for you:

    start 0ad in a infinite loop. So you never need to resart it manually when you change use TogglCommunityMod - Command or simply when changing the mode via mod-profiler. It allows for fast restart. For exit you then need to exit the calling app (typically a terminal).

    Example when you use fish-shell:

    That's a fish-style endless loop; very useful with TogglComunityMod - Command or simly when changing the mode via mod-profiler. It allows for fast restart :

    alias 6game026start 'while true; cd ~/game/0ad/026/; ./0ad-0.0.26-alpha-2210110407-x86_64_0cdfe6000a403313b99d6ea006a92d81.AppImage; sleep 1; end; '
     

    The command sets up an alias in the fish-shell. An alias is a way to create a shorthand or shortcut for a longer command.

    • alias: This is the command to define an alias.
    • 6game026: This is the name of the alias. It is the shorthand you want to use to refer to the longer command.
    • 'while true; ... end; ':
    • The longer command inside the single quotes is a loop that runs indefinitely (while true) and performs the following actions:
    1. cd ~/game/0ad/026/ : Change the current directory to ~/game/0ad/026/ . The ~/ notation represents the user's home directory.
    2. ./0ad-0.0.26-alpha-2210110407-x86_64_0cdfe6000a403313b99d6ea006a92d81.AppImage : Execute the 0ad AppImage

    The purpose of this alias is to provide a shortcut command (6game026) that allows for easy and infinite execution of the game. To stop the game, you will need to terminate the terminal session.

    useful with TogglComunityMod - Command or simly when changing the mode via mod-profiler.

    Bash-Style enless loops ( not tested ):

    alias 6game026='while true; do cd ~/game/0ad/026/ && ./0ad-0.0.26-alpha-2210110407-x86_64_0cdfe6000a403313b99d6ea006a92d81.AppImage; sleep 1; done'
     

    for windows users ( not tested !!! ):

    @echo off
    :loop
    cd /d C:\path\to\game\0ad\026
    start "" 0ad-0.0.26-alpha-2210110407-x86_64_0cdfe6000a403313b99d6ea006a92d81.AppImage
    timeout /t 1 >nul
    goto loop
  10. please somebody test this script ( modBuildScript.sh ). for me the results looks good and it also works inside 0ad as expected. @andy5995 @Atrik@Lopess @Itms , ( thanks @andy5995 for the this GitHub action . i should look at this later. ty very much )

    Preparing for mod.Io upload:


    when i create it by using Pyromod first, means using my createAutoCivPyromod.sh

    alias cdCreateAutoCivPyromod    "cd ~/.local/share/0ad/; pwd; ./createAutoCivPyromod.sh"

    rm ~/Downloads/autocivp.pyromod
    rm ~/game/0ad/a27/a27build/binaries/system/autocivp.pyromod
    cd ~/game/0ad/a27/a27build/binaries/system/
    ./pyrogenesis -mod=mod -mod=public -mod=autocivp -archivebuild=/home/seeh/.local/share/0ad/mods/autocivp -archivebuild-output=autocivp.pyromod -archivebuild-compress
    cp ~/game/0ad/a27/a27build/binaries/system/autocivp.pyromod ~/Downloads/autocivp.pyromod
    rm ~/game/0ad/a27/a27build/binaries/system/autocivp.pyromod
    cp ~/Downloads/autocivp.pyromod ~/Downloads/autocivp.zip
    doublecmd ~/game/0ad/a27/a27build/binaries/system/ ~/Downloads/

     thats the results created by createAutoCivPyromod.sh

     

    that the results look different -> thats the results created by my modBuildScript.sh :

    when i activate in 0ad it (autocivp_temp or autocivp_temp2 - folder)  0ad it works like expected ( some told me e.g. @Manimal  it should be a zip inside this zip for the modIo upload. i was seeing some do so. i not sure .... maybe the autocivp_temp.zip is best? idk)

     

    UPDATE ( 23-0803_1914-00 ) :

    compare to https://mod.io/g/0ad/m/autociv/autociv_v26.0.1.2.zip (left) to autocivp_temp2.zip ( right )

    ,

    ==> conclusion. The claim that there should be a zip in the zip is probably wrong when it comes to preparing a zip file for the upload to mod.io 
    if this conclusion is correct then: 1) i simple could use the autocivp_temp2.zip produced by the modBuildScript.sh( i will do this now: ..api.mod.io/..3105810..4124897 )
    2 ) ..._temp2.zip in the modBuildScript.sh script should be renamed to ..._readyForUploadToModIo.zip

    Example of this claim:

     

    modBuildScript.sh

    modBuildScript-updated_at_23-0803_1948-59.sh

  11. 1.0.30

    These updates introduce various enhancements and improvements to the AutoCivP mod, including new features, improved accessibility, and better customization options.

    Adding a free text postfix option to game names.
    Updating the legend.
    Updating AutoCivP to lowercase and adding a legend.
    Adding the modBuilder script.
    Updating the options JSON for a27.
    Explaining the PL shortcut.
    Showing optional ♇ or AP to indicate when AutoCivP is being used.
    Showing an optional icon when AutoCivP is being used.
    Adding limitations to the readme.
    Adding options for a shortcut to show when the proGUI mod is used, providing a fair play experience.
    Adding the no-blood-and-gore-mod as a default.
    Adding a hint in the tooltip on how to see all icons.
    Adding a hint on how to temporarily reduce the sensitivity of the substitutions mechanism.
    Explaining what the communityMod is.

    Assets 2
  12. On 03/04/2019 at 3:15 PM, Itms said:

    Common Mistakes:

    • name/label confusion in mod.json - for instance https://0ad.mod.io/ja-lang
      • "name" should be a lowercase identifier, it usually matches the URL of your mod on mod.io: for instance "ja-lang"
      • "label" is a human-readable name, it usually matches the title of the mod on mod.io: for instance "Japanese Language Pack"
    • top-level extra directory. Your zip should contain directly mod.json and the rest of the files, it should not contain a sub-directory with the files. The best way to avoid the issue is to use the archive builder. In order to test whether you made the mistake, try opening the mod with 0 A.D. If you land on the mod selection page and your mod was added to the list (appearing in green), things are good.

    Example sh-script . maybe need adapted / changed a bit that may help somebody:

    #!/bin/bash

    # This script performs the following actions:
    #
    # Extracts the value of the mod_name variable from the mod.json file using the jq command-line tool.
    # Removes the existing ${mod_name}_temp directory and creates a new one.
    # Copies directories directly within the copy_dir_from directory to the ${mod_name}_temp directory.
    # Copies non-hidden files from the copy_dir_from directory to the mod_temp directory, excluding specific files.
    # Creates a zip file (${mod_name}_temp.zip) for the mod by compressing the contents of the ${mod_name}_temp directory.
    # Creates a second temp directory (autocivP_temp2) and copies the mod.json file and the ${mod_name}_temp.zip file into it.
    # Creates a zip file (${mod_name}.zip) for the mod by compressing the contents of the ${mod_name}_temp2 directory.
    # Opens a web browser (Firefox) with a specific URL related to the mod.
    # Note: The script assumes that the jq command-line tool is installed and to run it from inside your mod

    # use this from inside your mod folder

    #!/bin/bash
    
    # links:
    # https://wildfiregames.com/forum/topic/24333-guide-for-publishing-mods-on-modio/?do=findComment&comment=554945
    # may some interesting stuff also here: https://github.com/ModIO/
    
    # alternative may you want create mods also by using this script that use pyrogenesis:
    # rm ~/Downloads/autocivP.pyromod
    # rm ~/game/0ad/a27/a27build/binaries/system/autocivP.pyromod
    # cd ~/game/0ad/a27/a27build/binaries/system/
    # ./pyrogenesis -mod=mod -mod=public -mod=autocivP -archivebuild=/home/seeh/.local/share/0ad/mods/autocivP -archivebuild-output=autocivP.pyromod -archivebuild-compress
    # cp ~/game/0ad/a27/a27build/binaries/system/autocivP.pyromod ~/Downloads/autocivP.pyromod
    # rm ~/game/0ad/a27/a27build/binaries/system/autocivP.pyromod
    # cp ~/Downloads/autocivP.pyromod ~/Downloads/autocivP.zip
    # doublecmd ~/game/0ad/a27/a27build/binaries/system/ ~/Downloads/
    
    
    # This SH-script performs the following actions:
    #
    # Extracts the value of the mod_name variable from the mod.json file using the jq command-line tool.
    # Removes the existing ${mod_name}_temp directory and creates a new one.
    # Copies directories directly within the copy_dir_from directory to the ${mod_name}_temp directory.
    # Copies non-hidden files from the copy_dir_from directory to the mod_temp directory, excluding specific files.
    # Creates a zip file (${mod_name}_temp.zip) for the mod by compressing the contents of the ${mod_name}_temp directory.
    # Creates a second temp directory (autocivP_temp2) and copies the mod.json file and the ${mod_name}_temp.zip file into it.
    # Creates a zip file (${mod_name}.zip) for the mod by compressing the contents of the ${mod_name}_temp2 directory.
    # Opens a web browser (Firefox) with a specific URL related to the mod.
    # Note: The script assumes that the jq command-line tool is installed and its run inside your mod folder
    
    clear
    
    # Extract the value of the mod_name variable from mod.json
    mod_name=$(jq -r '.name' mod.json)
    
    echo "${mod_name}"
    # clear
    
    dir_mod="$PWD"
    dir_mods="$PWD/.."
    dir_temp="${dir_mods}/${mod_name}_temp"
    echo "41: dir_temp= $dir_temp"
    dir_temp2="${dir_mods}/${mod_name}_temp2"
    
    # Clean the file path
    dir_mod=$(realpath "$(readlink -f "$dir_mod")")
    dir_mods=$(realpath "$(readlink -f "$dir_mods")")
    echo "47: dir_temp= $dir_temp"
    dir_temp=$(realpath "$(readlink -f "$dir_temp")")
    dir_temp2=$(realpath "$(readlink -f "$dir_temp2")")
    
    echo "PWD= $PWD"
    echo "dir_mod= $dir_mod"
    echo "dir_mods= $dir_mods"
    echo "53: dir_temp= $dir_temp"
    echo "53: dir_temp2= $dir_temp2"
    
    #!/bin/bash
    
    # use this from inside your mod
    
    # Remove existing autocivP_temp directory and create a new one
    rm -rf $dir_temp
    mkdir $dir_temp
    
    copy_dir_from="${dir_mod}" # Use absolute path of the source directory
    echo "copy_dir_from= $copy_dir_from"
    
    
    # Copy directories directly within $copy_dir_from
    find $copy_dir_from/* -maxdepth 0 -type d -exec cp -r {} $dir_temp \;
    
    
    # Copy non-hidden files, excluding tempList.text and tsconfig.json
    find $copy_dir_from -maxdepth 1 -type f -not -name ".*" -not -name "tempList.text" -not -name "tsconfig.json"  -not -name "error_unsolved.txt" -exec cp {} $dir_temp \;
    
    # Display the directories within autocivP_temp
    # find $dir_temp -type d
    
    echo ${dir_mod}
    echo ${dir_mods}
    
    
    # Display the current working directory
    pwd
    
    # List the files and directories within autocivP_temp
    # ls -l $dir_temp
    
    # Count the number of files and folders in autocivP_temp (excluding the autocivP_temp directory itself)
    num_files=$(find $dir_temp -type f | wc -l)
    num_folders=$(find $dir_temp -type d | wc -l)
    num_folders=$((num_folders - 1))
    echo "Number of files in ${dir_temp}: $num_files"
    echo "Number of folders in ${dir_temp}: $num_folders"
    
    # Create a zip file for mod
    rm -rf ${dir_mods}/${mod_name}_temp.zip
    rm -rf ${dir_mods}/${mod_name}.zip
    
    cd ${dir_temp}
    echo "zip -r ${dir_mods}/${mod_name}_temp.zip ."
    zip -r ${dir_mods}/${mod_name}_temp.zip .
    
    
    # Create a second temp directory
    rm -rf $dir_temp2
    mkdir $dir_temp2
    
    # Copy the mod.io file to the second temp directory
    cp ${dir_mod}/mod.json $dir_temp2
    
    # Copy the ${mod_name}_temp.zip to the second temp directory
    cp ${dir_mods}/${mod_name}_temp.zip $dir_temp2/${mod_name}.zip
    
    # Zip the autocivP_temp_2 directory
    # echo dir_temp2=/absolute/path/to/${mod_name}/$dir_temp2
    
    sleep 1
    cd ${pwd}
    sleep 1
    cd $dir_temp2
    sleep 1
    zip -r ${dir_mods}/${mod_name}.zip .
    
    # Sleep for 1 second before continuing
    sleep 1
    
    firefox https://mod.io/g/0ad/m/${mod_name}

     

    • Like 2
×
×
  • Create New...