Requests for new components (and features)

Discussion in 'Civ4 - BTS Unaltered Gameplay (BUG, BAT and BULL)' started by Cammagno, Sep 6, 2007.

  1. Zyxpsilon

    Zyxpsilon Running Spider

    Joined:
    Oct 29, 2009
    Messages:
    3,250
    Gender:
    Male
    Location:
    On Earth
    Oh, i meant to ask - before i must go...

    For the Diplomacy screens; their Flags, Map color(s) & other stuff could be added somewhere on each sides of the LH box.
    There is about 60 to 100 pixels of empty space to work with.
    Besides, SittingBull/NativeAmerica (wider text - indeed) Civic icons get crushed right off their locations in the available frame. Making them unreadable. Silly.

    Heck, even Number of cities, Gold, Research, Techs willing to trade cues could be splashed up in that area.

    Soooo, any taker for this extra "work" at BUG?
     
  2. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    It's been too long since I worked with NikNaks on new theme-based buttons to know what the rules about these were. If you check out the existing ones I think there is a 2 pixel border in the graphic itself. This is to allow for the highlight effect around the button.

    Theme-based buttons would be nicer, have hover highlighting and separate pressed/depressed/disabled states for maximum shininess. They beat GFC-based buttons hands-down. Lemme see if I can dig up the ones he had done so far.

    I'll take a look, yes. Can you please start a new "BUG Theme" thread to discuss this? Maybe leave the first post with just a one-paragraph intro and then put the latest sample shot in the second post. We tend to move discussions into separate threads and leave this thread for just the initial idea/request posting. Feel free to add a post here with a link there if you like.

    I am sooo not a graphics guy. I know a little about GIF, JPEG, and PNG (not really), and what a mipmap is. That's about it. I would have guessed that A8 is a larger European paper size, probably akin to the U.S.'s tabloid size. ;)

    Easy for you and me, sure. Not so easy for the users that want to install using the ZIP but don't even know what Notepad is. My preference would be to write some Python in BUG that checks for this when BUG starts up and adds the appropriate one-liner include if it's not there.

    Yet one more not-so-difficult-to-do-but-tedious-to-test-and-make-bulletproof task on my list which is already overflowing. At this point I'd kill for a solid Python coder. :backstab:

    AFAIK we cannot modify the ESC menu, and the regenerate function is blocked after turn 1. I'll take a poke around to see if it's easily fixable to change this. The main issue is that there are certain things in the game that cannot be undone such as meeting rivals and resetting diplomatic memories that start accruing once you meet rivals. Yes, meeting rivals is one check that is looked for, so I dunno what blocks it as I haven't looked into it yet.

    On a related front, I want to add a BUG menu with a button on the top-left (and ALT + CTRL + ESC shortcut) for

    • BUG Options (need button)
    • Regenerate Map (need button)
    • Start MapFinder (need button)
    • Strategy Layer (need 2 buttons, possibly more)
    • Credits
    • About
    The Diplomacy screen is embedded in the EXE. AFAIK, the most you can mod are the tradeable items and the dialog options under the leaderhead. I'd love to be proven wrong on this count.
     
  3. Zyxpsilon

    Zyxpsilon Running Spider

    Joined:
    Oct 29, 2009
    Messages:
    3,250
    Gender:
    Male
    Location:
    On Earth
    -- Thread started.

    -- That's the point with regenerating a map; we simply aren't willing to continue after awhile. One single turn is simply too short to decide. Which is why it needs to be altered. Sure, i can always go to the WB and examine stuff around - i'd rather not and click on the usual ingame menu.

    -- Such a button would indeed be quite useful!

    -- Strangely the Diplo screen seemed to have been quite a challenge for Devs, also. As shown by the numerous "dumped" frameworks present in the default FPK's. All i want is the flag somewhere in there, but i figured "much more" could be achieved for anybody willing_&_able. Something to look over, i guess.
     
  4. phungus420

    phungus420 Deity

    Joined:
    Mar 1, 2003
    Messages:
    6,296
    I'm surprised this hasn't been implemented. As per this post:

    http://forums.civfanatics.com/showpost.php?p=8745918&postcount=1468


    While the request is made in the Legends of Revolution thread, the user's request is not specific to the Legends of Revolution mod; and since LoR uses the BUG UI, it would certainly benefit from such a feature. For those who don't want to check the post, basically the user wants an easy way to know what specific techs belong to what eras. The easiest way to do this would be to implement a color code scheme in the tech tree I'd imagine. It also seems such a color coding system would be pretty easy to implement.
     
  5. ruff_hi

    ruff_hi Live 4ever! Or die trying

    Joined:
    Oct 24, 2005
    Messages:
    9,103
    Location:
    an Aussie in Boston
    That seems pretty easy (assuming that we can get the era from the tech :)).

    Edit: which you can ... CvTechInfo.getEra()
     
  6. NBAfan

    NBAfan boss

    Joined:
    Aug 30, 2007
    Messages:
    3,351
    This has already been done in Rise of Mankind.:D
     
  7. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    Could you please post the file Assets/Python/Screens/CvTechChooser.py from that mod?
     
  8. Afforess

    Afforess The White Wizard

    Joined:
    Jul 31, 2007
    Messages:
    12,239
    Location:
    Austin, Texas
    Be warned, RoM's tech tree looks vastly different from Standard BTS. I like the changes, personally.

    View attachment CvTechChooser.zip
     
  9. ruff_hi

    ruff_hi Live 4ever! Or die trying

    Joined:
    Oct 24, 2005
    Messages:
    9,103
    Location:
    an Aussie in Boston
    Had a quick look at the file and it looks like the non researched techs are color coded. The current tech and known techs still have the same color as vanilla BtS. My thought was to put a shadow like border (prob about 3 to 5 pixels depending on how it looks) around the techs and color code that off the 'clock era' colors. That way, all techs have a related era color.

    Edit:
    I know how to change the color of text ... szText = localText.changeTextColor(szText, gc.getInfoTypeForString("COLOR_YELLOW"))
    I know how to change the color of a panel ... screen.setPanelColor(szTechRecord, 160, 100, 160)

    Anyone know how to change 'COLOR_YELLOW' into its 3 integers for setPanelColor?
     
  10. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    Code:
    szColor = "COLOR_YELLOW"
    iColor = gc.getInfoTypeForString(szColor)
    if iColor != -1:
        color = gc.getColorInfo(iColor)
        if color:
            rgb = color.getColor() # NiColorA object
            if rgb:
                screen.setPanelColor(szTechRecord, rgb.r, rgb.g, rgb.b)
    
     
  11. ruff_hi

    ruff_hi Live 4ever! Or die trying

    Joined:
    Oct 24, 2005
    Messages:
    9,103
    Location:
    an Aussie in Boston
    cool - thx. I'll mock up some options and start a new thread later this week.
     
  12. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    Another option would be to color just the header part of the tech card where the icon, name, and icons for AND prereq techs go and leave the body colored by whether or not it is researched, in the queue, or otherwise.
     
  13. ruff_hi

    ruff_hi Live 4ever! Or die trying

    Joined:
    Oct 24, 2005
    Messages:
    9,103
    Location:
    an Aussie in Boston
  14. Ulysses

    Ulysses Chieftain

    Joined:
    May 21, 2003
    Messages:
    33
    Location:
    Germany
    I dunno if someone has requested this yet, but a few alerts for espionage would be nice. "The demographics of Isabella are visible now!" for example.
    In the BAT-Mod I would like to have options to turn off the flags (like the shipped ones better) and blue marble (like it, but in the early turns of exploration it's a bit of a nuisance always to go in globe-mode to see if the plot is already explored bc of being too dark).
    I know that the essential word of BUG is "unaltered", but it would be nice if collaboration with projects like BBAI and PIG etc. could be expanded. Thinking about such dumb users like me who don't have the slightest clue of coding and compiling the core dll. (In this case talking about BAT and BULL).
    Now the praise:
    Haven't played CIV4 for a while now bc I didn't like it very much. The game's UI was too sparse to get an overview of all it's features. (Same with CIV3 before CIVAssist, a great mod too). But since I play with your mod game is so much fun. Without it CIV4 is only a half-baked product.
    Conclusio:
    Your mod is a mod for grownups, it's amazing and you guys rock!
     
  15. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    @Ulysses - Thanks for the kind words. :)

    BlueMarble and Flags: These are graphical components (BM is a theme) that aren't controlled by Python (code) like all the other BUG features. Just like the other graphical features (wide city bar and modern roads), these require user intervention to customize. :(

    BBAI and PIG: I agree, but the problem is time. Merging DLL mods is much tougher than Python mods. This is further complicated by the fact that BBAI and the UP are both under active development. It's easier to merge mods that are "done" and no longer change. As for PIG, I think PieceOfMind has done a pretty good job integrating the latest BUG/BULL releases so far, but I understand his time is also limited right now.

    I sympathize with the difficulty of merging these projects for end-users. It's tough for me, and it's my day job! :D I think as I spend less time adding features to BULL I may be able to make time to produce a merged version of BULL and BBAI, if only so I could start using BBAI again. :mischief:
     
  16. Ulysses

    Ulysses Chieftain

    Joined:
    May 21, 2003
    Messages:
    33
    Location:
    Germany
    Dito.:)

    Had some CTDs with Varietas8, playing plain BULL now.

    You got my comprehension.

    Then, dreams would come true.:)

    PS: You didn't answer my first question regarding alerts of espionage. Is this doable? Much effort? Interesting?
     
  17. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    Ruff just suggested this in the Espionage Advisor thread. I thought maybe you were jokingly suggesting it after reading his suggestion. :lol: I think Ruff may be working on this already.
     
  18. ruff_hi

    ruff_hi Live 4ever! Or die trying

    Joined:
    Oct 24, 2005
    Messages:
    9,103
    Location:
    an Aussie in Boston
    I referenced the original comment in the EP thread. I probably should have mentioned that I've moved the discussion.

    And ... btw ... Ruff is waiting to catch EF so that he can discuss how to add new events. Ruff just wasted his chance by talking to EF about tech eras :). Merry Christmas everyone!
     
  19. EmperorFool

    EmperorFool Deity

    Joined:
    Mar 2, 2007
    Messages:
    9,633
    Location:
    Mountain View, California
    Just register a handler for the new event and it will be created automagically. Then you can fire the event using CvEventInterface.getEventManager().fireEvent("<type>", args, ...). Check out the cool online docs for BUG's Core - Events.
     
  20. Ulysses

    Ulysses Chieftain

    Joined:
    May 21, 2003
    Messages:
    33
    Location:
    Germany
    Oh, this sounds great!

    BTW: :xmassign: to everyone here...
     

Share This Page