Jump to content

darkinterloper

Community Members
  • Posts

    6
  • Joined

  • Last visited

Posts posted by darkinterloper

  1. The Gohma techtree will need more allowed 'trainer units' due to its egg > larva > gohma mechanic, what file in the gui allows one to set that again? I remember seeing the variable earlier, but due to the overhaul of the gui in 0.23 I'm not sure it's still in the same place.

    • Like 1
  2. On 6/3/2018 at 7:42 AM, s0600204 said:

    Using the version made available here as a starting point:

    To support the kokiri groves, put this file: core_hyrule.js in gui/reference/common/ (also adds support for the gamestart hero-selection techs).

    For the factions not loading in the Structure Tree when directly selected from the Game Setup or Civ Info pages, or by clicking the emblem in-session, @SirPope has it correct - you need to use the correct phase tech naming schema. Here's a patch: patch_phasetechs.diff (Also removes the athen-specific phase techs from the gerudo Oasis.)

    In addition, here's a further patch that corrects the civ-identifiers on various templates: patch_civcodes.diff.

    The four non-UTF8 characters the game complains about are in data/civs/kokiri.json - in the civ history, and the blurbs of heroes Saria and Mirora. Did someone copy-paste from M$ Word?

    And finally, if you're going to have *_packed and *_unpacked variants of a siege unit, both inheriting from a *_common template file, then place the default icon for the unit in the *_common file and place the icon you wish to use specifically for the unpacked/packed version in the relevant variant template. (Instead of having the same icon mentioned in both the *_packed and *_unpacked template files.)

    Edit to add: I might be wrong but the Kokiri civil-centre with the public-hanging and watch-tower upgrades has an incorrect prop added to the prop of the actor (the final result is visually identical to civil-centre with communal-home and watch-tower).

    Worked like a charm, thank you!

     

    20180604180859_1.jpg

  3. Hello all, been a while, I'm still working on HC along with Neph and Exodarion, currently attempting to resolve two gui-related issues with the structure tree present in HC's current patreon build.

    Firstly, the Kokiri structure tree will not load - we suspect this is probably related to the unusual build style of the Kokiri, with the focus on the three upgradable groves, and indeed there mayu be no way to resolve it, but here is the specific error message displayed

    WARNING: JavaScript warning: gui/reference/structree/structree.js line 146 reference to undefined property g_ParsedData.units[prod]

    ERROR: JavaScript error: gui/reference/common/helper.js line 111 TypeError: template is undefined getPhaseOfTemplate@gui/reference/common/helper.js:111:6 selectCiv@gui/reference/structree/structree.js:146:16 __eventhandler42 (selectionchange)@civSelection selectionchange:0:1

    Secondly, nearly all the structure trees for factions will not load when accessed from within a match by clicking the faction icon on the top bar. Attempting to do so opens a messed-up menu with the following error string on repeat. Some have reported switching to another faction in the dropdown menu will display that faction's structure tree correctly, and the Gerudo appear to load correctly, but are the only faction that does not result in this messed up string of errors.

    WARNING: JavaScript warning: gui/reference/common/helper.js line 112 reference to undefined property g_ParsedData.phaseList[0]

    WARNING: The "phase_town" technology is not researchable in any structure buildable by the hylian civilisation, but is required by something that this civ can research, train or build!

    WARNING: The "phase_city" technology is not researchable in any structure buildable by the hylian civilisation, but is required by something that this civ can research, train or build!

    WARNING: Unrecognised phase (phase_village)

    WARNING: JavaScript warning: gui/reference/common/helper.js line 100 reference to undefined property g_ParsedData.phaseList[0]

    WARNING: Unrecognised phase (phase_village)

    WARNING: Unrecognised phase (phase_village)

    WARNING: Unrecognised phase (phase_village)

    WARNING: Unrecognised phase (phase_village)

    WARNING: JavaScript warning: gui/reference/structree/structree.js line 189 reference to undefined property buildList[phase]

    ERROR: JavaScript error: gui/reference/structree/structree.js line 189 TypeError: buildList[phase] is undefined selectCiv@gui/reference/structree/structree.js:189:3 __eventhandler285 (selectionchange)@civSelection selectionchange:0:1 init@gui/reference/structree/structree.js:47:37 openStrucTree@gui/session/menu.js:1128:1 __eventhandler209 (press)@civIconOverlay press:0:1

    ERROR: GUI page 'page_structree.xml': Failed to call init() function

     

    20180531174313_1.jpg

  4. I've been attempting to add a number of Legend of Zelda languages as custom fonts to the engine by following these tutorials:

    https://trac.wildfiregames.com/wiki/Font_Builder2

    https://trac.wildfiregames.com/wiki/Adding_font_support

    And seem to have succeeded in installing and configuring Python and the associated files correctly, but am not sure how to activate "fontbuilder.py" Attempts to run "python fontbuilder.py" in the command prompt display an error, while manually running the script seems to do nothing. I've attempted a test run of the script and no font files appeared in the output directory. I'm not sure if the script needs to go somewhere in either the 0 AD files or Python directory or I messed up a previous step.

     

    on the note of the script, when I do manage to get it working, are these the correct sections in which to input new fonts?

     

    # For extra glyph support, add your preferred font to the font array
    Sans = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_DEFAULT)
    Sans_Bold = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_DEFAULT)
    Sans_Italic = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_DEFAULT)
    SansMono = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_DEFAULT)
    Serif = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_NO_HINTING)
    Serif_Bold = (["AncientHylian.otf","GerudoTypography.ttf"], FontLoader.FT_LOAD_NO_HINTING)

    # Define the size differences used to render different fallback fonts
    # I.e. when adding a fallback font has smaller glyphs than the original, you can bump it
    dsizes = {'HanaMinA.ttf': 2} # make the glyphs for the (chinese font 2 pts bigger)

    fonts = (
        ("mono-10", SansMono, 10, filled),
        ("mono-stroke-10", SansMono, 10, stroked2),
        ("sans-9", Sans, 9, filled),
        ("sans-10", Sans, 10, filled),
        ("sans-12", Sans, 12, filled),
        ("sans-13", Sans, 13, filled),
        ("sans-14", Sans, 14, filled),
        ("sans-16", Sans, 16, filled),
        ("sans-bold-12", Sans_Bold, 12, filled),
        ("sans-bold-13", Sans_Bold, 13, filled),
        ("sans-bold-14", Sans_Bold, 14, filled),
        ("sans-bold-16", Sans_Bold, 16, filled),
        ("sans-bold-18", Sans_Bold, 18, filled),
        ("sans-bold-20", Sans_Bold, 20, filled),
        ("sans-bold-22", Sans_Bold, 22, filled),
        ("sans-bold-24", Sans_Bold, 24, filled),
        ("sans-stroke-12", Sans, 12, stroked2),
        ("sans-bold-stroke-12", Sans_Bold, 12, stroked3),
        ("sans-stroke-13", Sans, 13, stroked2),
        ("sans-bold-stroke-13", Sans_Bold, 13, stroked3),
        ("sans-stroke-14", Sans, 14, stroked2),
        ("sans-bold-stroke-14", Sans_Bold, 14, stroked3),
        ("sans-stroke-16", Sans, 16, stroked2),
    )

    for (name, (fontnames, loadopts), size, style) in fonts:
        print "%s..." % name
        generate_font("../../../binaries/data/mods/Hyrule/fonts/%s" % name, fontnames, loadopts, size, style, dsizes)

    • Like 1
  5. 7 hours ago, SirPope said:

    Observer fix and AI auto select for civ_choices.js

    
    function initCivChoicesDialog()
    {
    	for(let player in g_Players)
    	{ //unlock teck for AI
    		if( g_GameAttributes.settings.PlayerData[ player ] ) //Observers have no player data
    			if( g_GameAttributes.settings.PlayerData[ player ].AI != "" )
    			{
    				let aiPlayer = g_Players[player];
    				let civChoices = g_CivData[aiPlayer.civ].CivChoices;
    				if( civChoices )
    				{
    					let randomi = Math.floor( Math.random()* (g_CivData[aiPlayer.civ].CivChoices.length));
    					Engine.PostNetworkCommand({ "type": "civ-choice", 
    						"template": g_CivData[aiPlayer.civ].CivChoices[randomi] });
    //warn(player +" AI choose: "+g_CivData[aiPlayer.civ].CivChoices[randomi]); //Unsure how to make petra unlock it though
    					Engine.GetGUIObjectByName("civChoicesDialogPanel").hidden = true;
    				}
    			}
    	}
    
    	if( Engine.GetPlayerID() == -1) { //observers have no playerData
    		return;
    	}
    
    	let currentPlayer = g_Players[Engine.GetPlayerID()];
    //choice menu for players
    	let civChoices = g_CivData[currentPlayer.civ].CivChoices;
    
    	if (civChoices)
    	{
    		for (let i = 0; i < civChoices.length; ++i)
    		{
    			if( civChoices[i] == undefined)
    				continue;
    			let civChoiceButton = Engine.GetGUIObjectByName("civChoice[" + i + "]");
    			civChoiceButton.caption = GetTechnologyData(civChoices[i]).name.generic;
    
    			let size = civChoiceButton.size;
    			size.top = 20 * i;
    			size.bottom = 20 * (i + 1);
    			civChoiceButton.size = size;
    
    			civChoiceButton.onPress = (function(tech) { return function() {
    //warn("playerSelected:"+tech );
    				Engine.PostNetworkCommand({ "type": "civ-choice", "template": tech });
    				Engine.GetGUIObjectByName("civChoicesDialogPanel").hidden = true;
    			}})(civChoices[i]);
    
    			civChoiceButton.hidden = false;
    		}
    		Engine.GetGUIObjectByName("civChoicesDialogPanel").hidden = false;
    	}
    }

    Until petra is patched, which mimo seems to know everything needed to be done, the AI doesn't quite work well. Note: gerudo's won't train any sheep for some reason and I can't figure out why. It might be something wrong with the pig template. I don't know missing Unit tag?

    I did edit petra to get hyrule to build farms and start building civcentres early. I'm impatient for a mod friendly AI. I don't know if mimo's edits will work with A22 as it is or not. I don't quite know how to download a folder from the tracbrowser anyway. He's seemed to have removed the mod breaking aspect of petra: which was using direct template names and not gathering them off the <Classes> tag (NOTE: VisibleClasses are completely different). You may want to revisit some files and make sure they have the proper tags. I had to add "Field" to the hyrule's farmstead/field combo for my petra edits to work properly.

     

    Anyway: Hyrule Conquest Opinions - probably already addressed these in this forum somewhere.

    Training times are 30 seconds. One minute for 2 soldiers... I don't like that really. You may have to edit petra's researchManager quiet a bit to get some of the techs to work for the AI. I'll look over them but I want to see if mimo's AI does this already. The building models are quite huge the AI (and people) will have trouble expanding with the small amount of territory influence they add ( and the 'must build in own territory' limitation). You can edit the limitation by adding neutral to the build restrictions territory tag. You may have to set the territory influence to 0. I'm not sure if petra really cares about the neutral tag though. I have yet to properly look over A23's future version to see if that's changed. They didn't seem to notice it or take advantage of it in delenda though.

     

    UPDATE: ... -.- It doesn't seem to unlock the tech for the AI. It will pick one. I'm not sure how to force the tech to be unlocked.

    Hi Sirpope, I tried adding your altered civ_choices.js, it does seem to unlock techs for AI in some capacity, but may also unlock unique hero units for a player who is the same faction as said AI: for example, when playing as the Kingdom of Hyrule, with the hero Kazakk, versus an AI Kingdom of Hyrule of medium difficulty, I was able to train "Champion Knight", the Hero Link's unique unit as well as Kazakk's "Goldenclad Elite." Additionally, the AI began experiencing numerous error logs as I sent and attack force after it, which are attached, I can't make any sense of them not knowing anything about how Petra works.

    interestinglog.html

    20171109230619_1.jpg

  6. Hello,

    I'm one of the on-off two members of "Hyrule Conquest Team," we haven't had much to do as with the engine switch neph is able to do most of its without needing any additional help, so I've been keeping myself busy trying to understand the 0 AD engine and help fix errors and bugs to the best of my ability.

    I've noticed, at least in my game, the temporary hero selection screen has stopped working in single-player, with the attached error message. If anyone has any idea as to what problem with that GUI file is please let me know.

    And thanks for all the help with Hyrule Conquest, it's nice to meet you all :D

    @Lion.Kanzen That armor is being used for the Lanayru Zora faction, these Zora Neph is working on, the Dominion Zora, have a much fancier gold/sapphire aesthetic :P

     

     

     

    Capture.PNG

    • Like 3
×
×
  • Create New...