Jump to content

Stan`

0 A.D. Project Leader
  • Posts

    16.977
  • Joined

  • Last visited

  • Days Won

    522

Posts posted by Stan`

  1. As far as I know only I can. I needed a simple way to share links at events in the form of one QRCode for those not willing to waste flyers and who'd rather just use their phones.

    The reason I didn't qualify with official and unofficial is that it prevented some people from engaging at all, and in other instances caused me to have to join 15 discords :)

    The next person managing this list can feel free do to whatever they want however.

    I'd say the international discord link is the second biggest 0 A.D. discord after the hyrule one.

  2. 1 hour ago, Gurken Khan said:

    If someone knew our file structure and how a command line works, would it be difficult to just batch check for that code snippet?

    Not that hard, but a little still.

    For all templates with the garrison component,
        for all actors of those templates
             if there is no garrisoned variant then you have a missing flag.

    Then for all the dae files referenced in that actor you need to ensure they have a prop-garrisonedYYY else the model needs to be adjusted.

    Something like that

            <node id="prop-box_02" name="prop-box_02" type="NODE">
              <matrix sid="transform">-1.62921e-7 -1 0 -0.8 1 -1.62921e-7 0 -0.08623493 0 0 1 3.79285e-4 0 0 0 1</matrix>
            </node>

    https://trac.wildfiregames.com/browser/ps/trunk/binaries/data/mods/public/art/meshes/props/box_pile_01.dae#L71

     

    Else you can convince someone to rewrite the system so that the prop point(s) is/are set in the templates instead and convince that person to extract all the data from those nodes and put them in the templates instead. This way adding a flag will be easier for you (Also you can change the civ depending on the owner :P )

    • Like 1
  3. Hey @Allan

    You need to add the following tag to your particle effect:

    <use_relative_velocity/>

    So in your case:

    <?xml version="1.0" encoding="utf-8"?>
    <particles>
    
        <texture>art/textures/particles/flame.png</texture>
        <blend mode="add"/>
    
        <start_full/>
        <use_relative_velocity/>
    
        <constant name="emissionrate" value="20.0"/>
        <uniform name="lifetime" min="1.0" max="1.5"/>
    
    
        <uniform name="velocity.x" min="-2" max="-2.5"/>
        <uniform name="velocity.y" min="-0.3" max="0.3"/>
        <uniform name="velocity.z" min="2" max="2.5"/>
        <uniform name="velocity.angle" min="-3.14" max="3.14"/>
    
        <uniform name="size" min="1.0" max="2.0"/>
    
        <uniform name="color.r" min="0.8" max="1.0"/>
        <copy name="color.g" from="color.r"/>
        <copy name="color.b" from="color.r"/>
    
    </particles>

    I removed the following line in my screenshot for it to be straight.

        <uniform name="velocity.x" min="-2" max="-2.5"/>

    image.png

    • Like 1
    • Thanks 3
  4. 16 hours ago, hyperion said:

    From my limited knowledge of Windows memory model, it allows sort of overcommit

    I'm not sure that works for 32 bits apps.

    Basically :

    - Default 32 bit app : max 2GB of RAM

    - Large adress aware 32 bit app : max 4GB of ram

    - 64 bit app

    I couldn't see any swapping info on the MSDN links https://stackoverflow.com/questions/2222901/memory-allocation-limit-for-a-32-bit-app-on-a-64-bit-system

    11 hours ago, chrstgtr said:

    I don't recall it ever happening when I first started playing in a21.

    I think there was no popup then. elexis fixed a shitton of OOS in A23b

    • Like 1
    • Thanks 1
  5. 19 hours ago, hyperion said:

    Reports seems to have increased a lot since last community mod release, maybe try without. What should help a lot is reduced map size, less players or lower pop cap.

    If you still have it around, it would be interesting to have the 64bit A26 build you made to see if that reduces the issues ? If it's that frequent, it would make it easy to rule it out ^^

    Not sure if @vladislavbelov has a usable 64bit build.

  6. Ah it would seem I never updated this file https://trac.wildfiregames.com/browser/ps/trunk/build/jenkins/pipelines/docker-reset.Jenkinsfile

     

    /* Copyright (C) 2022 Wildfire Games.
     * This file is part of 0 A.D.
     *
     * 0 A.D. is free software: you can redistribute it and/or modify
     * it under the terms of the GNU General Public License as published by
     * the Free Software Foundation, either version 2 of the License, or
     * (at your option) any later version.
     *
     * 0 A.D. is distributed in the hope that it will be useful,
     * but WITHOUT ANY WARRANTY; without even the implied warranty of
     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     * GNU General Public License for more details.
     *
     * You should have received a copy of the GNU General Public License
     * along with 0 A.D.  If not, see <http://www.gnu.org/licenses/>.
     */
    
    // This is a helper pipeline to build Docker images and setup ZFS volumes.
    
    pipeline {
    	agent {
    		node {
    			label 'LinuxSlave'
    			customWorkspace '/zpool0/trunk'
    		}
    	}
    	parameters {
    		booleanParam(name: 'no-cache', defaultValue: false, description: 'Rebuild containers from scratch')
    		booleanParam(name: 'reset-volumes', defaultValue: false, description: 'Reset ZFS volumes')
    	}
    
    	stages {
    		stage("Cleanup") {
    			steps {
    				sh 'docker system prune -f'
    			}
    		}
    		stage("Full Rebuild") {
    			when {
    				environment name: 'no-cache', value: 'true'
    			}
    			steps {
    				sh 'docker build --no-cache -t build-base ~/dockerfiles/build-base'
    				sh 'docker build --no-cache -t 0ad-gcc7 ~/dockerfiles/gcc7'
    				sh 'docker build --no-cache -t 0ad-gcc7-docs ~/dockerfiles/gcc7-docs'
    				sh 'docker build --no-cache -t 0ad-clang8 ~/dockerfiles/clang8'
    				sh 'docker build --no-cache -t 0ad-translations ~/dockerfiles/translations'
    			}
    		}
    		stage("Build") {
    			when {
    				environment name: 'no-cache', value: 'true'
    			}
    			steps {
    				sh 'docker build -t build-base ~/dockerfiles/build-base'
    				sh 'docker build -t 0ad-gcc7 ~/dockerfiles/gcc7'
    				sh 'docker build -t 0ad-gcc7-docs ~/dockerfiles/gcc7-docs'
    				sh 'docker build -t 0ad-clang8 ~/dockerfiles/clang8'
    				sh 'docker build -t 0ad-translations ~/dockerfiles/translations'
    				sh """
    					docker rmi debian:buster
    					DANGLING_IMAGES="\$(docker images --filter \"\"\"dangling=true\"\"\" -q --no-trunc)"
    					if [ -n "\$DANGLING_IMAGES" ]; then
    							echo "Removing dangling images: \$DANGLING_IMAGES"
    							docker rmi \$(docker images --filter \"\"\"dangling=true\"\"\" -q --no-trunc)
    							echo "Done."
    					else
    							echo "No dangling images found."
    					fi
    				"""
    			}
    		}
    		stage("Update") {
    			steps {
    				sh "svn cleanup 2>/dev/null || true"
    				svn "https://svn.wildfiregames.com/public/ps/trunk"
    				sh "svn st --no-ignore | cut -c 9- | xargs rm -rf"
    				sh "svn revert -R ."
    			}
    		}
    		stage("Volumes") {
    			when {
    				environment name: 'reset-volumes', value: 'true'
    			}
    			steps {
    				sh "sudo zfs destroy -R zpool0/trunk@base || true"
    				sh "sudo zfs destroy -R zpool0/trunk@latest || true"
    
    				sh "sudo zfs snapshot zpool0/trunk@base"
    				sh "sudo zfs clone zpool0/trunk@base zpool0/gcc7"
    				sh "sudo zfs clone zpool0/trunk@base zpool0/clang8"
    				sh "sudo zfs snapshot zpool0/trunk@latest"
    				sh "sudo zfs snapshot zpool0/clang8@latest"
    				sh "sudo zfs snapshot zpool0/gcc7@latest"
    			}
    		}
    	}
    }

     

    But basically you need to build base, then gcc7 then the docs one.

    docker build -t build-base build-base.Dockerfile
    docker build -t 0ad-gcc7 gcc7.Dockerfile
    docker build -t 0ad-gcc7-docs gcc7-docs.Dockerfile

     

    15 hours ago, Cayleb-Ordo said:

    By the way, interesting way to use zfs pools. Never seen them used like this before.

    Yeah @Itmsdid some nice engineering there. Basically disk space is sparse on the VM and and cloning is very long, so we saved a lot of time and space.

  7. Yeah once you reach 4GB of used RAM for the game, there is nowhere else to write data (Imagine having filled a notebook and the only place left blank is the table but your pen doesn't work on that surface. So at best you manage to find some blank spot in your notebook, or you write over something else and you go OOS.

    I'm not sure what you can do to minimize RAM usage on windows. Since most games have no AIs they shouldn't be the culprit. Hopefully some bits of code aren't behaving and leaking memory and we can figure it out, if not this just means the simulation is complex and takes that much space. @wraitii or @Itms or @elexis might know more or how to get more info.

     

×
×
  • Create New...