Author Topic: General Discussion  (Read 3821599 times)

0 Members and 32 Guests are viewing this topic.

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6525 on: December 28, 2015, 12:22:09 PM »
The way how we select a normal weapon attack atm doesn't look good. Very different weapons can use the same BE skill, so it will be confusing. And it's too straightforward in general.

I suppose we could show the name of equipped weapon or left/right hands options. Maybe even use some kind of minigame to pick a weapon if two weapons are equipped.

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6526 on: December 28, 2015, 01:48:06 PM »
The way how we select a normal weapon attack atm doesn't look good. Very different weapons can use the same BE skill, so it will be confusing. And it's too straightforward in general.

I suppose we could show the name of equipped weapon or left/right hands options. Maybe even use some kind of minigame to pick a weapon if two weapons are equipped.

More specific please. I don't mind additional logic, but not when it's so vague. Eventually I'd like proper logic for spells, tactical combat, items, skills and summons but only when code base is ready for it..
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6527 on: December 28, 2015, 02:19:38 PM »
Existing weapons skills are not skills. They are basic attacks with different animation, sound and crit chance, tied to weapons in items jsons. Skill is for example a "Powerful Attack" or a "Last Assault", not a "Bow".

So when we propose to select one, it looks weird, and it's not very useful. That's not how they do it in other games either, usually you just select the attack option, and it happens immediately.


Now, our problem is that a character might have two weapons, with different skills, maybe even one melee and one ranged.
I have a few ideas how to get rid of that weapon skill menu:
- automatically alternate hands, two turns for main weapon, one turn for small weapon, repeat
- randomly select a hand in the beginning of attack
- use stances; attack stance uses main weapon and increases attack a bit, defense stance uses small weapon and increases defense a bit. You can change stance any time during battle, wasting turn.
« Last Edit: December 28, 2015, 02:22:05 PM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6528 on: December 28, 2015, 02:29:17 PM »
That seems like work for no particular goal to me... we'll prolly do it at some point but this is in now way a priority. I am done with sorting, gonna see if I can add a major lighting attack...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6529 on: December 28, 2015, 02:54:14 PM »
The goal is to use two weapons slots smarter than picking one of them every singe time you want to attack, which is a pure waste of mouse clicks.


Well sh#t. I was wondering why my function that calculates submissiveness doesn't work as intended, returning too low values.
Quote
def check_submissivity(c):
    mult = c.character/c.get_max("character")
...
I googled that
Quote
You're using Python 2.x, where integer divisions will truncate instead of becoming a floating point number. You should make one of them a float.
And after I changed it to mult = float(c.character)/float(c.get_max("character")), it began to work.

Just wow. That sucks big time. Now I have to check all my divisions in the game to make sure they work as intended  ::)

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6530 on: December 28, 2015, 02:59:24 PM »
The goal is to use two weapons slots smarter than picking one of them every singe time you want to attack, which is a pure waste of mouse clicks.

We don't know where we'll be taking weapons in future development, it's too early for this atm.

Just wow. That sucks big time. Now I have to check all my divisions in the game to make sure they work as intended  ::)

Or import division from future :) Although that may mess something else up...
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6531 on: December 28, 2015, 03:07:14 PM »
So they had int() to return integer, and float() to return float. Why did they even bothered with round()?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6532 on: December 28, 2015, 03:15:29 PM »
So they had int() to return integer, and float() to return float. Why did they even bothered with round()?

int will not round as we round in math (maybe float does that as well but I don't know about that without looking sh!t up)... also round takes arguments so you can round properly when you need a specific number rounded to nearest digit after the point for example.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6533 on: December 28, 2015, 03:18:09 PM »
Waaait, in python "//" is supposed to be an integer division. But since in 2.7 "/" IS integer division, what "//" does there? I actually used it recently, and it didn't gave me an error. I'm confused  :D

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6534 on: December 28, 2015, 03:19:19 PM »
Waaait, in python "//" is supposed to be an integer division. But since in 2.7 "/" IS integer division, what "//" does there? I actually used it recently, and it didn't gave me an error. I'm confused  :D

No idea, // is too exotic for me :D I only know / and %.
Like what we're doing?

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6535 on: December 28, 2015, 07:34:03 PM »
Added more "Cataclysm" scale attacks. I went with something else for Air instead of your proposal because I want that to be a summon one day. Darkness was a difficult choice, there were decent options. Light is the best I think. Still without real sfx.

I have decent ideas for Ice, Water and Earth as well but no strength left. Electricity as well but there are quite a few choices there without one clear winner.

===>>
Attach of the day is: Lighting Wrath :) If only cause existing SFX were a perfect fit!
« Last Edit: December 28, 2015, 07:41:13 PM by Xela »
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6536 on: December 29, 2015, 12:11:07 AM »
In python 2.7
Quote
The / operator performs floating point division if at least one operand is a float, or integer division if both are ints.

The // operator performs integer division, producing an int if both operands are ints, or a float that is a whole number, if at least one operand is a float. If there is a fractional part in the result, it is discarded, but we still have a float, ending in .0.
And here I thought python is supposed to have a clear syntax and to avoid complexity. Nice job making multiple divisions with minor differences that also work differently in different versions.

Let's google a bit more.
Quote
you're limited to a few workarounds. The most popular is to coerce one of the operands to a float. One robust solution is a / (b * 1.0)
Quote
Commonly seen is a / float(b). But this will raise a TypeError if b is a complex number - this may not be what you want.
A language of workarounds...
« Last Edit: December 29, 2015, 12:35:08 AM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Re: General Discussion
« Reply #6537 on: December 29, 2015, 03:31:29 AM »
Let's google a bit more.A language of workarounds...

As most are...

In python 2.7And here I thought python is supposed to have a clear syntax and to avoid complexity. Nice job making multiple divisions with minor differences that also work differently in different versions.

It is, you just really like nitpicking on small things :) It's a design as a whole that counts. 2+ version code is often not compatible with 3+, there were some changes in syntax there. We can import division from the future if this bother you, I doubt that it'll break anything.
Like what we're doing?

Offline DarkTl

  • Hero Member
  • *****
  • Posts: 4737
Re: General Discussion
« Reply #6538 on: December 29, 2015, 04:09:09 AM »
Here we go.
Sad, really sad  ::)
« Last Edit: December 29, 2015, 04:26:12 AM by DarkTl »

Offline Xela

  • Global Moderator
  • *****
  • Posts: 6893
  • "It's like hunting cows"
Like what we're doing?