devolution

Author Topic: General Discussion  (Read 3821356 times)

0 Members and 57 Guests are viewing this topic.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8805 on: November 03, 2016, 03:11:42 PM »
I wrote short testing code which should use the hidden matrix to hide 5 objects at the screen.

Either I don't understand something, or the hidden matrix is broken. By default there are zero areas at the screen. I know it for sure, because for testing I created them with 500x500 size, impossible to miss. But once I changed alpha of hidden matrix buttons to 1, there is always one single area at the top left corner, with zero randomness. Even though the corner is always empty with the old alpha = 0.001.

I dunno why your hidden matrix acts like that, even if I gave it incorrect dict somehow, it acts differently with different alpha.

I had the very same issues when tried to use it for fishing screen before making different screen with imagebuttons.

Do you have a use case? I never tested that screen and I was half-dead when I coded it.

Sadly, the setup is absolutely incompatible with dual class system. I'd prefer a dual menu where you select traits/classes for MC's mother and father at the same time, which in turn give certain traits/classes for MC. Including dual classes if parents classes are different.

Also not all options should be hierarchical - in fact, most shouldn't. Strict hierarchy complicates things a lot.
For example, MC's mother could have any race, giving MC certain race bonuses. But race cannot be a part of big, strict hierarchy, it's not tied to class for example.

Basically, the setup screen is so old compared to the current concept that it would be easier to use multiple renpy menu statements to setup MC than use the setup screen.

It's... creative, so we'll have to get creative as well :) I can give it a shot at some point before beta release if you don't feel like messing with it.


With this you can check your git history.

Code: [Select]
$ git fsck --full
 It may show dangling blobs. They are harmless, usually. Git tries to keep almost anything in history, even if you staged something once. They idea is that you can get back to the state of the code at that time. I believe after a while you can get some that lost their reference. The prune will indeed remove those but you may also lose some history.

Thx. It fixed an error I've had with another project, I found the instructions on StackOverflow.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8806 on: November 03, 2016, 03:24:01 PM »
Do you have a use case? I never tested that screen and I was half-dead when I coded it.
Yeap, beach screen, diving option, label city_beach_diving_checks. I stopped coding diving immediately after failed test of hidden matrix.

It's... creative, so we'll have to get creative as well
It will never support dual classes decently anyway. I'm fine with it, but you wanted dual classes support for MC too.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8807 on: November 03, 2016, 03:32:14 PM »
Yeap, beach screen, diving option, label city_beach_diving_checks. I stopped coding diving immediately after failed test of hidden matrix.

Oki, I'll hack at it will it can fly :D

It will never support dual classes decently anyway. I'm fine with it, but you wanted dual classes support for MC too.

And why the heck not? It doesn't have to be literal and precise... Any one of the four choices can add both base traits. Some selections could add one (at double power by default of the design). We're not sending out a mars crawler here, some obfuscation and mystery + decent descriptions can go a long way...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8808 on: November 03, 2016, 03:46:19 PM »
We don't have a writer to write those mini stories for all combinations.

There are four ways to do something in the game: have a business, fight at arena, explore SE, interact with characters. Also there will be ST. That gives us 5 base classes. 10 double combinations + 5 single ones = 15 possible classes sets for MC.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8809 on: November 03, 2016, 04:00:11 PM »
We don't have to fill everything and we don't really have to write all the stories, small descriptions will do and labels could be used just for logical applications. We could have way more classes than that. Managers, Warriors (Mage/Warrior/Ninja/Battle Mage and combinations), Casanova and combinations. I figured out the screen issue, buttons needed to get kicked in the butt with fixed size... I'll clean up your code and push.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8810 on: November 03, 2016, 04:11:40 PM »
And why the heck not? It doesn't have to be literal and precise... Any one of the four choices can add both base traits. Some selections could add one (at double power by default of the design).
No, such system, while possible, is too chaotic for me to maintain. If you want double classes, you will have to run the setup screen twice, with the current setup screen I only can do it for single class.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8811 on: November 03, 2016, 04:17:35 PM »
Oki, I'll take care of it.


You C and Delphi people with your while loops  :D
Code: [Select]
        dive_list = []
        while len(dive_list) < 5:
            our_loot = list(i for i in items.values() if "Diving" in i.locations and dice(i.chance))
            if our_loot:
                item = random.choice(our_loot)
            else:
                item = None
            dive_list.append(item)
        underwater_loot = {}
        i = 0
        while len(underwater_loot) < 5:
            m = random.random()
            n = random.random()
            underwater_loot[i] = [(100, 100), (m, n)]
            i += 1


Python baby:

Code: [Select]
   $ underwater_loot = {choice(list(i for i in items.values() if "Diving" in i.locations and dice(i.chance)) or [None]): [(100, 100), (random.random(), random.random())] for i in range(5)}
::)
« Last Edit: November 03, 2016, 04:21:12 PM by Xela »
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8812 on: November 03, 2016, 04:33:09 PM »
Huh? Dicts can have only unique keys. If you use items themselves as keys, you can never have repeatable items.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8813 on: November 03, 2016, 04:37:22 PM »
Good point! It should have never been a dict, it's useless there.
« Last Edit: November 03, 2016, 05:29:59 PM by Xela »
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8814 on: November 03, 2016, 06:51:04 PM »
Wtf... There is no place in MC inventory where you can see loot and resources, except the All filter. Again.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8815 on: November 03, 2016, 11:50:28 PM »
Wtf... There is no place in MC inventory where you can see loot and resources, except the All filter. Again.

For me, it's under the scroll thingy (used to be quest items or something like that).
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8816 on: November 04, 2016, 03:24:23 AM »
Yeap, force recompile fixed that.

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #8817 on: November 04, 2016, 05:40:44 AM »
There is one issue with diving screens. Once timer is over, it closes both timer and diving screen immediately. Even if you have the message about found item at the screen. It doesn't look good, ideally it should wait until the player reads it and makes left click.
I dunno what to do about it.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8818 on: November 04, 2016, 05:41:55 AM »
Hold on, I need to pull your last changes.
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #8819 on: November 04, 2016, 06:15:47 AM »
Did you get this error?
Code: [Select]
While running game code:
  File "game/library/initialization.rpy", line 1, in script
    init -999 python:
  File "game/library/initialization.rpy", line 29, in <module>
    import jsonschema
IOError: [Errno 2] No such file or directory: u'game/python-packages/jsonschema\\schemas/draft3.json'
???
Like what we're doing?