Thread Rating:
  • 1 Vote(s) - 5 Average
  • 1
  • 2
  • 3
  • 4
  • 5
IOU Recruits Manager 1.1.2
#1
IOU Recruits Manager 1.1.2



About IOU Recruits Manager

Maybe nobody care, but...
To edit the recruiting thread of my guild, i coded a little script that helps me to show useful infos about the guild, you can see the results here: Holy Warriors.

Features:
  • Works with python 2 and 3. (new)
  • IOU and Kongregate forums support.
  • Easy to edit guild infos.
  • Multiguild support.
  • Generation of thread title.
  • Generation of guild's IOU score.
  • Generation of guild's members average level.
  • Generation of guild's members average IOU score.
  • Generation of guild's buldings bonuses.
  • Colored status of allocated/available member slots.
  • Upgrade status bar for each building.
  • Separated templates for IOU and Kongregate.
  • Placeholders/special words to insert guild's datas in title and templates.
  • Recruiting string generation, useful for chat recruiting.

Last version: IOU Recruits Manager 1.1.2

Old versions:


Prerequisites

All you need is Python installed, that most *nix users already have, while windows users can google for it without ask me about, i don't know windows.




Install/Configuration

The script rely on a easy to edit JSON config file like this:
Code:
{
    "family_name": "Holy Warriors Family",
    "family_initials": "HWF",
    "guilds": [
        [
            {
                "guild_name": "Holy Warriors",
                "guild_initials": "HW",
                "guild_rank": 14,
                "entry_level": "300+",
                "members": [
                    ["brutalboy",        "Creator", 304, 31336],
                    ["Koruk",            "Leader", 323, 30861],
                    ["Magsie",             "Leader", 299, 31374],
                    ["Nulnulzeven",        "Leader", 280, 25957],
                    ["dave2",             "Member", 323, 30269],
                    ["Vygoran",            "Member", 321, 33599],
                    ["dawakka",            "Member", 317, 30428],
                    ["Kennith",            "Member", 316, 30966],
                    ["TangentA",         "Member", 311, 31084],
                    ["Tibiiron",        "Member", 311, 30084],
                    ["F4B1DN",             "Member", 311, 33093],
                    ["Yngwie84",        "Member", 311, 32359],
                    ["Predators",         "Member", 309, 31444],
                    ["SpaceDino",         "Member", 308, 31529],
                    ["AESJI212",         "Member", 307, 31930],
                    ["Dewx",            "Member", 306, 30412],
                    ["PokeSTD",             "Member", 304, 30810],
                    ["Eddu",            "Member", 303, 29425],
                    ["Jelle",             "Member", 294, 30287],
                    ["seckz",             "Member", 294, 28887],
                    ["OmegaMan5000",     "Member", 292, 28041],
                    ["Raed1",             "Member", 290, 31119],
                    ["Tidlz",            "Member", 290, 29269],
                    ["Aniquileitor",    "Member", 289, 27999],
                    ["bas011",            "Member", 289, 29801],
                    ["Acaila",            "Member", 288, 30534],
                    ["Xblugs",            "Member", 282, 30387],
                    ["pauldpaul",         "Member", 274, 27943]
                ],
                "buildings": [
                    ["Guild Hall",            19, 9900000],
                    ["Bank",                0, 1234567],
                    ["Fortress",            13, 1104000],
                    ["Altar",                15, 5998000],
                    ["Stable",                15, 6000000],
                    ["Warehouse",            16, 7000000],
                    ["Sacrificial Tower",    11, 1832000]
                ]
            }
        ],
        [
            {
                "guild_name": "NoMatterTheCost",
                "guild_initials": "NMTC",
                "guild_rank": 146,
                "entry_level": "250+",
                "members": [
                    ["turidrum",        "Creator", 268, 24685],
                    ["nevezlunluN",        "Leader", 219, 13732],
                    ["FrancisSavior",    "Member", 281, 29549],
                    ["staplestable",    "Member", 280, 25460],
                    ["SuperSteven",        "Member", 277, 28630],
                    ["SCHOLAE",            "Member", 276, 28562],
                    ["BOBLOBLAW1",         "Member", 264, 26040],
                    ["Mattkun",            "Member", 262, 24066],
                    ["JollieOllie",        "Member", 254, 23674],
                    ["Tiberon",         "Member", 245, 19071],
                    ["Phloh",            "Member", 228, 20726],
                    ["sunny123",        "Member", 228, 22616],
                    ["nevezlunluN2",    "Member", 219, 13830],
                    ["nevezlunluN3",    "Member", 219, 13867],
                    ["aplei",            "Member", 213, 12815]
                ],
                "buildings": [
                    ["Guild Hall",            9, 242000],
                    ["Bank",                0, 0],
                    ["Fortress",            10, 1000000],
                    ["Altar",                12, 3000000],
                    ["Stable",                11, 1898000],
                    ["Warehouse",            13, 4000000]
                    ["Sacrificial Tower",    11, 1832000]
                ]
            }
        ]
    ],
    "recruiting_threads": {
        "iou": "https://iourpg.com/forum/showthread.php?tid=1206",
        "kong": "http://www.kongregate.com/forums/12180-guild-recruitment/topics/543389"
    }
}

Where some keys are self explanatory, like guild_name and guild_rank, others like members and buildings holding more than a value, these values are as follow:
members values:
  1. Member's name
  2. Member's guild rank/status
  3. Member's level
  4. Member's IOU score

buildings values:
  1. Building's name
  2. Building's level
  3. Building's stones needed to next upgrade level (if Bank, then this is the amount of stones stored)

So, make a file like above(filled with your guild's data) naming it config.json, then download the last IOURecruitsManager.py version(look at the beginning).
Now, you have to give it execution permission, on *nix systems you can do this:
Code:
chmod 755 IOURecruitsManager.py

You have almost finished, just make 3 more files named title.txt, iou.template and kong.template.
Write your recruiting annunce in those files, there you can also use special words explained later.
Example iou.template(iou's forum use mybb code):
Code:
[align=center]
[img]http://s3.postimg.org/t4csjad9v/holy_warriors.jpg[/img]
[/align]
[size=large][size=xx-large][b]{GUILD}[/b] are searching for active players[/size]
[/size]
If you are eligible, write here your in-game name, level and iou score.
[url="http://linktosomethinguse.ful"]i'm a link[/url]

Example kong.template(kong supports some html tags):
Code:
<img src="http://s3.postimg.org/t4csjad9v/holy_warriors.jpg" />
<h1><strong>{GUILDNAME}</strong> are searching for active players</h1>
<br />
If you are eligible, write here your in-game name, level and iou score.
<a href="http://linktosomethinguse.ful">i'm a link</a>

These was too simple and single guild, look at two advanced expamples of multiguild iou.template and kong.template templates:
Code:
[align=center][img]http://s22.postimg.org/i2cff57fl/hwfamily_logo_black.png[/img][/align]
[align=center][size=xx-large][b]Holy Warriors Family[/b][/size][/align]
We offer to any member of our Family a complete and working platform that help you in various aspects of the game.
The platform is the Family's organization, a complex system which includes roles, rules, parties, communication, coordination, democracy, collaboration and so on.

A little introduction to Holy Warriors Family can be found [url=http://pastebin.com/raw.php?i=7XF82u4g]here[/url].



[align=center][img]http://s24.postimg.org/rfftet4ed/HW_logo_forum.png[/img][/align]
[size=large][b]{HW-GUILD}[/b] - {HW-DYNAMICSLOTS} - Entry level {HW-ENTRYLEVEL}[/size]
We are ranked {HW-POSITION}, with your support we can easily break on top 10!
We are looking for active players who will use our forum and update their progress on our spreadsheet at least once a week, these things allow us to organize in-Family (semi)permanent parties DPS based.


[align=center][img]http://s4.postimg.org/6gp80wmct/NMTC_logo_forum.png[/img][/align]
[size=large][b]{NMTC-GUILD}[/b] - {NMTC-DYNAMICSLOTS} - Entry level {NMTC-ENTRYLEVEL}[/size]
We are ranked {NMTC-POSITION}, when full we should be ranked ~80-100th.
We are looking for active players who will use our forum and update their progress on our spreadsheet at least once a week, these things allow us to organize in-Family (semi)permanent parties DPS based.
Being a NoMatterTheCost member you are automatically part of our waiting list for Holy Warriors. The advantage is that you already know how we work together and we prefer to promote from there instead of getting foreign players.


If you are eligible for any of our guilds, [url=https://iourpg.com/forum/private.php?action=send&uid=829]send me a PM[/url].

[hr]

{HW-IOUSCORE}
{HW-AVERAGELEVEL}
{HW-MEMBERSLIST}
{HW-BUILDINGSLIST}

[hr]

{NMTC-IOUSCORE}
{NMTC-AVERAGELEVEL}
{NMTC-MEMBERSLIST}
{NMTC-BUILDINGSLIST-TEXT}

[hr]
[align=center][b]Holy Warriors[/b] - It's Bunga Bunga time![/align]

[size=xx-small]
Notes:[/size]
[list]
[*][size=xx-small]This post is autogenerated and updated frequently, check the warriors counter above the warriors list to know if there are free spots, or the Guild Hall upgrade bar to guess when next spot will be available.[/size]
[*][size=xx-small]We recruit only if you are in our waiting list, if you are planning to stay in a top guild, you should [url=https://iourpg.com/forum/private.php?action=send&uid=829]PM me[/url] for more info right now.[/size]
[/list]
Code:
<div>
    <img src="http://s22.postimg.org/i2cff57fl/hwfamily_logo_black.png" /><br />
    <h1><strong>Holy Warriors Family</strong></h1>
    <br />
    We offer to any member of our Family a complete and working platform that help you in various aspects of the game.
    The platform is the Family's organization, a complex system which includes roles, rules, parties, communication, coordination, democracy, collaboration and so on.
    <br />
    A little introduction to Holy Warriors Family can be found <a href="http://pastebin.com/raw.php?i=7XF82u4g">here</a>.
    <br />
    <br />
</div>

<div>
    <img src="http://s24.postimg.org/rfftet4ed/HW_logo_forum.png" />
    <h1><strong>{HW-GUILD}</strong> - {HW-DYNAMICSLOTS} - Entry level {HW-ENTRYLEVEL}</h1>
    We are ranked {HW-POSITION}, with your support we can easily break on top 10!
    We are looking for active players who will use our forum and update their progress on our spreadsheet at least once a week, these things allow us to organize in-Family (semi)permanent parties DPS based.
    <br />
    <br />
</div>

<div>
    <img src="http://s4.postimg.org/6gp80wmct/NMTC_logo_forum.png" />
    <h1><strong>{NMTC-GUILD}</strong> - {NMTC-DYNAMICSLOTS} - Entry level {NMTC-ENTRYLEVEL}</h1>
    We are ranked {NMTC-POSITION}, when full we should be ranked ~80-100th.
    We are looking for active players who will use our forum and update their progress on our spreadsheet at least once a week, these things allow us to organize in-Family (semi)permanent parties DPS based.
    <br />
    Being a NoMatterTheCost member you are automatically part of our waiting list for Holy Warriors. The advantage is that you already know how we work together and we prefer to promote from there instead of getting foreign players.
    <br />
    <br />
</div>
If you are eligible for any of our guilds, <a href="http://www.kongregate.com/accounts/turidrum/private_messages?focus=true">send me a PM</a>.

<hr />

{HW-IOUSCORE}
{HW-AVERAGELEVEL}
{HW-MEMBERSLIST}
{HW-BUILDINGSLIST}

<hr />

{NMTC-IOUSCORE}
{NMTC-AVERAGELEVEL}
{NMTC-MEMBERSLIST}
{NMTC-BUILDINGSLIST}

<hr />
<strong>Holy Warriors</strong> - It's Bunga Bunga time!

<h6>
Notes:
<ul>
<li>This post is autogenerated and updated frequently, check the warriors counter above the warriors list to know if there are free spots, or the Guild Hall upgrade bar to guess when next spot will be available.</li>
<li>We recruit only if you are in our waiting list, if you are planning to stay in a top guild, you should <a href="http://www.kongregate.com/accounts/turidrum/private_messages?focus=true">PM me</a> for more info right now.</li>
</ul>
</h6>


The title.txt file is for thread's title generation, is used as template with some special words that will be replaced by guild's data, there is an example file with almost all the available special words:

Code:
-=[{HW-GUILD}]=- -=[Top {HW-RANK} ({HW-BUILDINGS})]=- -=[Recruiting {HW-EMPTYSLOTS} ({HW-MEMBERS}/{HW-MAXMEMBERS})]=-

The above title example will output something like this: "-=[Holy Warriors]=- -=[Top 20 (9/8/6/10/9)]=- -=[Recruiting 1 (18/19)]=-"


Template keywords

Supposing you set "HW" as value for guild_initials in your file config.json, then can use the following keywords in your templates

{HW-GUILD} will be replaced by the guild name.
{HW-RANK} will be replaced by the guild rank number.
{HW-POSITION} will be replaced by the guild rank as 1st, 2nd, 3rd etc...
{HW-ENTRYLEVEL} will be replaced by the entry_level's value you set in config.json for this guild.
{HW-BUILDINGS} will be replaced by building levels separated by slashes(/).
{HW-MEMBERS} will be replaced by the number of members.
{HW-MAXMEMBERS} will be replaced by the max number of members.
{HW-EMPTYSLOTS} will be replaced by the number of empty slots.
{HW-DYNAMICSLOTS} will be replaced by a string like this "3 players" or if there are no slots "Full".
{HW-IOUSCORE} will be replaced by the guild's IOU score.
{HW-AVERAGELEVEL} will be replaced by the guild's members average level.
{HW-AVERAGEIOUSCORE} will be replaced by the guild's members average IOU score.
{HW-MEMBERSLIST} will be replaced by a pretty printed member list.
{HW-BUILDINGSLIST} will be replaced by a pretty printed buildings list, images as upgrade status bars.*
{HW-BUILDINGSLIST-TEXT} will be replaced by a pretty printed buildings list, upgrade status as text percentage.
{TOTALEMPTYSPOTS} will be replaced by the total number of free spots in all your guilds

* Due to forum restriction on iou forum, a max of 10 image can stay in a single post, eventually fallback on {HW-BUILDINGSLIST-TEXT}.


Usage

To generate the post, on *nix system you have to type this:
Code:
./IOURecruitsManager.py
If you want the kong result:
Code:
./IOURecruitsManager.py --kong

Just copy the output and paste in your guild's thread, but don't forget to paste after clicked the sourcecode icon(or pressed ctrl+shift+s), infact the above script will give you sourcecode output for forum.
If you want generate the title, on *nix system you have to type this:
Code:
./IOURecruitsManager.py --title

To show a recruiting string, type:
Code:
./IOURecruitsManager.py --recruiting_string

This should output an useful string to recruit new players in chat, like this:
-=[Holy Warriors Family]=-=[TOP 14]=-=[5 free spots 250+]=- IOU: https://iourpg.com/forum/showthread.php?tid=1206 KONG: http://www.kongregate.com/forums/12180-g...ics/543389

There are even shorthands for each argument you can use in the terminal, to show the complete arguments list type:
Code:
./IOURecruitsManager.py --help

This is a terminal output given with --help:
Code:
$ ./IOURecruitsManager.py -h
--------------------------------------------------------------------------------
IOU Recruits Manager 1.1.0
--------------------------------------------------------------------------------

Description: Helper tool for managing Idle Online Universe's recruiting threads

Usage: ./IOURecruitsManager.py [ -i | -k | -t | -r | -v | -h ]
-i --iou             Output format for IOU forum, default.                      
-k --kong            Output format for Kongragate forum(html)                    
-t --title           Prints the thread's title.                                  
-r --recruiting_string Prints an oneliner, plain text, recruiting string.          
-v --version         Prints program version.                                    
-h --help            Show this help.                                            

Without arguments generates the full post.
More info: https://iourpg.com/forum/showthread.php?tid=1350

Have fun.


Note:
This documentation may be incomplete or outdated, type ./IOURecruitsManager.py --help for more info
Reply
#2
Thanks a lot , this will help other guilds big time ^^ *I'm use pic so :v , ehhh *
Reply
#3
(09-03-2015, 03:59 AM)WhiteK Wrote: Thanks a lot , this will help other guilds big time ^^ *I'm use pic so :v , ehhh *

ehhehehehe, your pics are making me epileptic!!!
Reply
#4
Quote:Ascention

typo, 0/5
Reply
#5
(09-03-2015, 04:12 AM)Muriko Wrote:
Quote:Ascention

typo, 0/5

ahhahaha, fixed, thank you!
Reply
#6
new version!
now supports multiguild, iou and kong forums output, recruiting string (aka spam!) and another thing that i don't mind lol
Reply
#7
new version!
added support for the new buildings Bank and Sacrificial Tower, better support for utf-8, now works both in python 2 and 3, and some minor bug fixes.


wish of the day:
if Ray want give us a little and helpful gift, a command like "/guild json" that copy to the clipboard each player name, IOU score, level, and buildings levels and stones needed to the next upgrade, would be awesome, even as two separate commands, like "/members json" and "/buildings json".
Reply
#8
This is fantastic stuff, thank you brutal boy! And it would be something that would be incredibly easy to keep together if you were right and Ray wrote /guild json so it could be converted and saved without having to deal with all the typing.

Either way this is tits. Thank you.
Level: 417 IOU: 40536
Guild: Andromeda (Rank 18)
TRUEIdle-DPS: 72M+
Total Damage: 15.61B ; Mob Kills: 1.02M
Mining Depth: 58; Woodcut: 25
Total Cards: 514k (+294k damage)
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)