The internet is a lawless place with knowledge and sarcastic wit the pistols of this wild frontier.
Don't go out without being sufficiently armed.

~Blade

Other places

Ares (Current version: 0.B)

Ares's primary facilities have been moved elsewhere:

  • If you wish to report a bug in Ares, please proceed to its bugtracker.
  • If you'd like to request a feature, register a blueprint.
  • If you have questions or can provide answers regarding Ares's usage, visit the Q&A section.
  • Before you post a new question, you should check the FAQ, though.

Behavior

  • Mind the forum rules.
  • Due to its documentedly horrible quality, we do not offer NPatch support.


Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
A new Yuri's Revenge INI editor (update 05/27/11)
Author Message
Private linq2js Offline
Junior Member
**
Members

Posts: 5
Joined: 24 May 2011
Reputation: 0
Post: #1
A new Yuri's Revenge INI editor (update 05/27/11)
I develop a modding tool "Yuri's Revenge INI Editor".

Some program screenshots:

[Image: 1.jpg]
List of sections and child sections or section properties, can jump to section with a button on editing grid.

[Image: 2.jpg]
Advanced find section tool with wildcard supporting (startwith / endwith), default search any section name contains a keyword.

[Image: 4.jpg]
Edit property easily with auto complete popup dialog (customizable by config.ini)

[Image: 5.jpg]
Predifined template supporting for quick creating a new section

[Image: 3.jpg]

Main program commands:
Filter -> filter property / section displayed in editing grid
Goto section -> goto current editing section
Auto Complete -> popup available values of selected property
Find Section -> find section with wildcards
Clone Section -> copy all properties of current to new section
Copy Properties -> copy selected properties to other section
Merge Properties -> copy all properties to other section
Copy INI Code -> copy ini code of selected / all properties to clipboard
Show INI source
Insert INI code -> insert ini snippet to current source and reload
Clear Property Value -> clear selected / all propertie values of current section

config.ini
A program customization data, some snippets:

[rulesmd] -> define a schema for rulesmd.ini
@General=node -> indicate General section show in left panel
@BuildingTypes=list -> indicate BuildingTypes show in left panel and auto reorder child sections, display "jump to section" button in a editing grid


(*)/Owner=multiple(@Countries) -> indicate Owner property of any section has popup dialog showing all values in Countries section
(*)/ToProtect=boolean -> indicate a boolean (yes/no)
(*)/FreeUnit=single(@VehicleTypes)
(*)/Primary=single(@All) -> @All token mean "All section names"
(*)/Prerequisite=multiple(@BuildingTypes)

syntax: multiple(@SectionName1, value1, value2, @SectionName2) => popup multiple values selecting dialog

syntax: single(@SectionName1, value1, value2, @SectionName2) => popup single value selecting dialog

Section or property matching can be regular expression.
Ex: (*)/Weapon\d+= => match Weapon1, Weapon2, WeaponX...

General/AICaptureWounded=number -> AICaptureWounded property of General section is number

[rulesmd.template] -> define a templates for rulesmd.ini
#Title=Building Type -> Text display in menu
UIName=
Name=
BuildCat=
Prerequisite=
Strength=
Armor=
TechLevel=


[rulesmd.template] -> define a templates for rulesmd.ini
#Title=InfantryType -> Text display in menu
UIName=
Name=
Image
Prerequisite=
Strength=
Cost=
Armor=
Primary=
Seconday=
TechLevel=


... and more ...
In order, the template menu item has shortcutkeys is Ctrl+1 -> Ctrl+0 and Ctrl+Shift+1 -> Ctrl+Shift+0 (total 20 items), >21th item has no shortcutkeys

Update 05/25/2011:
Now, the editor can validate INI code. Validation conditions store in config.ini. Download link changed.

[rulesmd.validation] => define a validation
Warheads/(*)=exist => all items in Warheads section must be existed
(*)/Primary=exist => all values of Primary property in any section must be existed
(*)/Seconday=exist
(*)/Projectile=exist
(*)/Prerequisite=exist
(*)/Owner=exist

(*)/Warhead=exist(Warheads) => all values of Wardhead property must be existed in Warheads section

Screenshots:
[Image: 6.jpg]



Update 05/27/11 (Download link changed):
+ New menu INI, move some items from Edit menu to the INI.

+ New command Fill Series

+ Add color selector dialog
config.ini code: (*)/PropertyName = color
[Image: 9.jpg]

+ Section groupping / filtering
[Image: 8.jpg]

Some examples:
@(*)=filter(mode=Basic & prerequisite=GACNST & title=Allied Buildings) => filter with basic mode, section must has prerequisite=GACNST, show title in list of sections

@(*)=filter(mode=Basic & prerequisite=GAPILE & category=Soldier & title=Allied Infantry)

@(*)=filter(mode=Basic & prerequisite=GAWEAP & category=AFV & title=Allied Units)

@(*)=filter(mode=Basic & prerequisite=GAYARD & title=Allied Naval)

@(*)=filter(title=All Weapons & projectile) => any section has projectile (no property value restriction)

@(*)=filter(title=Used Weapons & mode=Collect & property=Primary & property=Secondary) => collection all sections in indicated properties

General syntax:
filter(paramName1 = paramValue1 & paramName2 = paramValue2)
- Preversed parameter names: title, mode, test, property
- Other parameters are filter conditions, parameter has only name means value is optional.
- Parameter name can duplicate in some case.


+ Fix INI validation errors, config.ini code:
[rulesmd.validation]
Warheads/(*)=exist
(*)/Primary=exist(!NONE)
(*)/Seconday=exist(!NONE)
(*)/Projectile=exist => section of this property must be existed
(*)/Prerequisite=exist(!BARRACKS,!RADAR,!TECH,!PROC,!P​OWER,!FACTORY,!BASE) => check existing and ignore some ALIAS
(*)/Owner=exist
(*)/Warhead=exist(Warheads) => must be exist in Warheads section

+ INI comparision
[Image: 10.jpg]

[Image: 11.jpg]

Next features: Replace property value.

Install / Requirements:
- No installation required
- Program run on Microsoft .NET Framework 3.5, download here
- Download link

Notes:
Program is still developing, please backup your ini file before edit by program.

Please report bugs / questions in this thread.

Thanks for your reading
(This post was last modified: 27.05.2011 07:16:56 by linq2js.)
24.05.2011 21:29:57
Find all posts by this user Quote this message in a reply
Commander-in-Chief DCoder Offline
Not Ares Anymore
*****
Admins

Posts: 1 756
Joined: 22 Nov 2004
Reputation: 18
Post: #2
RE: A new Yuri's Revenge INI editor
Looks useful, keep up the good work!

Just mind that there are several thousand tags in the engine, your configuration file will end up quite large.

24.05.2011 21:34:28
Visit this user's website Find all posts by this user Quote this message in a reply
Private linq2js Offline
Junior Member
**
Members

Posts: 5
Joined: 24 May 2011
Reputation: 0
Post: #3
RE: A new Yuri's Revenge INI editor
(24.05.2011 21:34:28)DCoder Wrote:  Looks useful, keep up the good work!

Just mind that there are several thousand tags in the engine, your configuration file will end up quite large.

Thank you, I think every modder only use small set of tags for themselves . Program can load a <100k config file quickly.
24.05.2011 21:44:15
Find all posts by this user Quote this message in a reply
Ares Tester AlexB Offline
Grandmaster B
***

Posts: 221
Joined: 16 Feb 2010
Reputation: 5
Post: #4
RE: A new Yuri's Revenge INI editor
Good work so far.
24.05.2011 22:15:54
Find all posts by this user Quote this message in a reply
Private Steel Mirage Offline
The Amazing Doc Man
***
Members

Posts: 119
Joined: 3 Apr 2011
Reputation: 1
Post: #5
RE: A new Yuri's Revenge INI editor
Thats really handy, nice work!

FormerAres Documentation Manager
Nobody here but us trees...
Graion Dilach Wrote:Worm, you know this guy is an American lawyer of some sort.
Giggle Good one!
24.05.2011 22:34:32
Find all posts by this user Quote this message in a reply
Private Orac Offline
Member
***
Members

Posts: 89
Joined: 19 Oct 2009
Reputation: 0
Post: #6
RE: A new Yuri's Revenge INI editor
Inpressive. That looks like a very effective interface.
Lovely work, I'll use it.
(This post was last modified: 25.05.2011 00:42:20 by Orac.)
25.05.2011 00:41:49
Find all posts by this user Quote this message in a reply
Private ¥R M0dd€r Offline
Member
***
Members

Posts: 120
Joined: 18 May 2010
Reputation: 0
Post: #7
RE: A new Yuri's Revenge INI editor
I always used wordpad to edit my ini files, but this tool looks awesome, I think I will use it.

Java student.
25.05.2011 15:25:25
Find all posts by this user Quote this message in a reply
Ares Tester Graion Dilach Offline
Senior Member
****

Posts: 317
Joined: 2 May 2010
Reputation: 3
Post: #8
RE: A new Yuri's Revenge INI editor
Crap, of course these pops up after my GPU fries!

When I get a new PC, I'll check this one. Looks nice but TBH... an AI editor with this awesomity would be much more helpful.
25.05.2011 18:41:40
Find all posts by this user Quote this message in a reply
Private linq2js Offline
Junior Member
**
Members

Posts: 5
Joined: 24 May 2011
Reputation: 0
Post: #9
RE: A new Yuri's Revenge INI editor (update 05/25/11)
Thanks all, new features will update soon, some screenshots:

Fixed PROC, BASE, FACTORY error messages when validate INI code
[Image: 7.jpg]

Can define section filters for quickly access
[Image: 8.jpg]

Color selector
[Image: 9.jpg]
26.05.2011 15:44:03
Find all posts by this user Quote this message in a reply
Private hogo Offline
Member
***
Members

Posts: 130
Joined: 9 Aug 2006
Reputation: 0
Post: #10
RE: A new Yuri's Revenge INI editor (update 05/25/11)
(26.05.2011 15:44:03)linq2js Wrote:  Thanks all, new features will update soon, some screenshots:

Fixed PROC, BASE, FACTORY error messages when validate INI code
[Image: 7.jpg]

Can define section filters for quickly access
[Image: 8.jpg]

Color selector
[Image: 9.jpg]
Good update Smile
27.05.2011 00:22:26
Visit this user's website Find all posts by this user Quote this message in a reply
Private linq2js Offline
Junior Member
**
Members

Posts: 5
Joined: 24 May 2011
Reputation: 0
Post: #11
RE: A new Yuri's Revenge INI editor (update 05/27/11)
Preview a AI Editor:

Features:

AI Editor is a part of Yuri'Revenge INI Editor, at Tools -> AI Editor (in the future: Art Editor etc.)

[Image: 12.jpg]

Main screen is very simple, no buttons. All commands will execute by shortcuts (Ctrl+A select all, Ctrl+D deselect all ..). Available single keys: Del, Enter, Insert ... for editing. Other commands: Clone

- ID is readonly and auto generation
- 1, 2, 3, 4: list of object type
- 5: predefined filter
- 6: quick filter: can input text for basic searching or advanced syntax for property value searching
Ex: search trigger: TechType = NAMISL & Side = 1 & (ProbDef = 10 | ProbDef = 20)
Operators supported:
=, <> for string / number comparision
>, <, >=, <= for number comparision
& (and), | (or) logic
(, ) grouping
Property name only means "property is not empty"
!Property name only means "property is empty"

- 7, 8: multi editing with previous, next buttons and dropdown list
- 9: can reset one / all editing object to origin values

Download link will update soon
30.05.2011 18:22:35
Find all posts by this user Quote this message in a reply
Ares Tester Graion Dilach Offline
Senior Member
****

Posts: 317
Joined: 2 May 2010
Reputation: 3
Post: #12
RE: A new Yuri's Revenge INI editor (update 05/27/11)
Howe are your Sides defined there? DCoder's AI Editor couldn't accept new sides only new countries, that's why I ask.
30.05.2011 21:09:43
Find all posts by this user Quote this message in a reply
Private hogo Offline
Member
***
Members

Posts: 130
Joined: 9 Aug 2006
Reputation: 0
Post: #13
RE: A new Yuri's Revenge INI editor (update 05/27/11)
(30.05.2011 21:09:43)Graion Dilach Wrote:  Howe are your Sides defined there? DCoder's AI Editor couldn't accept new sides only new countries, that's why I ask.

That's a good question, having it be able to be used for new Sides would greatly increase the chance of it being used.
31.05.2011 00:08:01
Visit this user's website Find all posts by this user Quote this message in a reply
Private linq2js Offline
Junior Member
**
Members

Posts: 5
Joined: 24 May 2011
Reputation: 0
Post: #14
RE: A new Yuri's Revenge INI editor (update 05/27/11)
(31.05.2011 00:08:01)hogo Wrote:  
(30.05.2011 21:09:43)Graion Dilach Wrote:  Howe are your Sides defined there? DCoder's AI Editor couldn't accept new sides only new countries, that's why I ask.

That's a good question, having it be able to be used for new Sides would greatly increase the chance of it being used.

Sides and Countries read from rulesmd in order (1 = GDI, 2 = NOD, 3 = ThirdSide, 4 = FourthSide and so on)
31.05.2011 01:30:51
Find all posts by this user Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)