These are chat archives for ZaneDubya/UltimaXNA

26th
Oct 2016
Boberski
@TorchwoodPL
Oct 26 2016 08:57
I pulled the repo and an canot compile it :P
I have errors in:
public static bool InstallationIsUopFormat => GreaterThanOrEqualTo(ClientExe, m_ConvertedToUOPVersion);
    public static bool HasExtendedFeatures(byte[] version) => GreaterThanOrEqualTo(version, m_ExtendedFeaturesVersion);

    public static bool HasExtendedAddItemPacket(byte[] version) => GreaterThanOrEqualTo(version, m_ExtendedAddItemToContainer);
Toni Spets
@hifi
Oct 26 2016 08:57
that requires newer C# version, have you tried changing it to C# 5.0 or something?
in the project properties
Boberski
@TorchwoodPL
Oct 26 2016 08:58
I am trying now
Toni Spets
@hifi
Oct 26 2016 08:59
and you have definitely used the proper Visual Studio version and XNA version the code is written against?
Boberski
@TorchwoodPL
Oct 26 2016 09:01
yes because it was compiled pull ago :P
Boberski
@TorchwoodPL
Oct 26 2016 09:36
@hifi what version of vc you are using?
Toni Spets
@hifi
Oct 26 2016 09:40
I'm porting this to MonoGame so I have never compiled it on VC
@ZaneDubya @jeffboulanger I'm going to submit a pull request that removes some unnecessary native calls which also removes a lot of duplicate code from UltimaMono, hopefully it's ok
it doesn't really change how anything works
Boberski
@TorchwoodPL
Oct 26 2016 09:45
and what version of monogame are you using?
Toni Spets
@hifi
Oct 26 2016 09:45
3.5/git master
but you really can't use monogame without changes with UltimaXNA
it's a long project to get it to sync up and I'm heading that I suppose
Boberski
@TorchwoodPL
Oct 26 2016 09:46
I canot change target C3 in this project :/
Boberski
@TorchwoodPL
Oct 26 2016 10:04
change vc to 2015 fixed the issue :P
Toni Spets
@hifi
Oct 26 2016 10:05
maybe a recent merge bumped the required version to 2015 by accident
Zane Wagner
@ZaneDubya
Oct 26 2016 10:56
I don't think I made any changes that would require 2015, unless it's the lambda operator...
@jeffboulanger Do you know if the lambda operator requires 2015?
Zane Wagner
@ZaneDubya
Oct 26 2016 11:03
I don't want to change the requirement from VS2013, but at the same time, there's little difference between requiring VS2013 (a platform for which there is no official version of XNA!) or requiring VS2015 (again, no official version of XNA!).
Boberski
@TorchwoodPL
Oct 26 2016 11:05
I used this to switch :P
Zane Wagner
@ZaneDubya
Oct 26 2016 11:05
@jeffboulanger @TorchwoodPL I think I've figured it out: "expression bodied functions" require C# 6.0
I'll change those back.
@TorchwoodPL Nice! Very clearly written.
Boberski
@TorchwoodPL
Oct 26 2016 11:06
:)
Zane Wagner
@ZaneDubya
Oct 26 2016 11:09
I'm reverting the lines requiring C# 6.0 now. I'll continue to think about moving to 2015. I'm stashing that link. :)
Boberski
@TorchwoodPL
Oct 26 2016 11:09
@ZaneDubya great :)
Zane Wagner
@ZaneDubya
Oct 26 2016 11:11
Thanks for pointing out the issue!
Boberski
@TorchwoodPL
Oct 26 2016 11:11
My pleasure
I am testing lient with utlima online TOL files and it is working so far :)
there are some error when you try to teleport between realms but I do not investigated that closer
Zane Wagner
@ZaneDubya
Oct 26 2016 11:15
I saw #420 was one of those errors. There well may be more.
It would be entirely unsurprising to me ;)
Toni Spets
@hifi
Oct 26 2016 13:50
@ZaneDubya I think you broke the build with your revert
ClientVersion property name is InstallationIsUopFormat but ArtMulResource tries to use IsUopFormat
or my subtree update is broken
or it broke before the revert
@hifi Sorry you've run into this issue. The correct property name is now InstallationIsUopFormat. This is used throughout master.
Toni Spets
@hifi
Oct 26 2016 14:36
should I send a pull request doing that for the things that are broken or?
again I can't really test anything properly on VS/XNA so I'm driving blind
Zane Wagner
@ZaneDubya
Oct 26 2016 14:37
For this issue, at least, you should be able to merge from master, and see what the conflicts are on your end.
Toni Spets
@hifi
Oct 26 2016 14:38
wut? I think the issue came from master
wait, I might be mistaken
yes, I am mistaken
Zane Wagner
@ZaneDubya
Oct 26 2016 14:38
I changed the property name on master. If you merge from master, then the code should be updated on your end as well. I think!
Well, you're in good company then. I usually am ;)
Toni Spets
@hifi
Oct 26 2016 14:38
I forgot I had copied a lot of the files over to UltimaMono
but it should be avoided soon if you accept my small fixes and MonoGame fixes a few bugs as well
everyone wins, right?
Zane Wagner
@ZaneDubya
Oct 26 2016 14:39
:( I really, really don't have the time to trouble shoot code that might work on my platform but not on yours. Or vice versa. I think making UXNA multi-platform would require someone to test on all platforms.
Toni Spets
@hifi
Oct 26 2016 14:39
I only need a couple of things to UltimaXNA to make the core running without copying too much stuff to my side
Toni Spets
@hifi
Oct 26 2016 15:05
there, that's the only two things that I currently can send a pull request for that shouldn't be of any problem to merge
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:03
@hifi We shouldnt remove native functions from windows, instead wrap them and use #if defines to use them on the proper platform
Toni Spets
@hifi
Oct 26 2016 16:04
it doesn't make any sense to use a native call to read from a file
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:04
haha it makes a ton of sense
its like 10x faster
its 16 bit data
and a 16bit call
no 32 bit overhead
no managed overhead
Toni Spets
@hifi
Oct 26 2016 16:04
2016, your ssd won't care
and it looks like a hack
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:05
not everyone is on an ssd
it looks like someone knows something or 2 about development, not a hack
Toni Spets
@hifi
Oct 26 2016 16:05
yay for unnecessary optimization
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:05
...
why not wrap it?
everyone wins
instead of being a downer
@hifi I'd like to point out that just because things work for you in monogame, on your system doesnt mean all linux/osx implementations/hardward will work, thus @ZaneDubya 's point of having to test on other systems is correct
so, the support load of monogame increases because of the broadness of platform support
Just because things work on your system, doesnt mean everyone has the same spec, you always program for the lowest spec
Toni Spets
@hifi
Oct 26 2016 16:07
oh god, reading from a file
you can't be fucking serious
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:08
ok i can see your additude about programming doesnt come from a professional level. It comes from a hobbyist level, so i will not conintue the arguement.
enjoy
Toni Spets
@hifi
Oct 26 2016 16:08
ah, your "professionalism" is about micro optimizing stuff just so you can feel better about your "skills"
that's not professinalism, mind you
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:08
its about doing things the right way
Toni Spets
@hifi
Oct 26 2016 16:08
doing things the right way is using the tools the language provides
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:09
first off, no, the biggest hit in any game is an IO read from a device. Why not optimize that?
UO reads every frame
so those reads need to be as fast as possible to get the best performance
so that begs the question, if you can get a 10x boost in performance from a read, why not do it
you opinion is based on the fact that it looks bad, or doesnt support mono
Toni Spets
@hifi
Oct 26 2016 16:10
if you really care about performance you wouldn't work with a managed language to begin with
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:10
thats not true either
Toni Spets
@hifi
Oct 26 2016 16:11
the JIT can optimize most of the stuff but it's still not native
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:11
anyway i can see you have a problem with me in general
im not gonna argue
do what you want, im just explaining why things are as they are
Toni Spets
@hifi
Oct 26 2016 16:11
I do have a problem with both of you which is making things much harder than they need to be
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:11
why are you here then?
why should we cater to you on this project?
do your own thing
we dont care
its open source for a reason
we both have jobs, lives, and do this for fun, not to cater to you
i have work to do, good luck with monogame
Toni Spets
@hifi
Oct 26 2016 16:12
your attitude against portability is beyond understanding
the support point is idiotic, there's nothing to support when there are no users
and you don't have a constant requirement to support anyone
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:14
@hifi good luck man
Toni Spets
@hifi
Oct 26 2016 16:24
also questioning my professionality based on going against an unportable optimization hack is on very loose grounds
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:25
@hifi Sorry, good luck
I mean it
no hard feelings
Toni Spets
@hifi
Oct 26 2016 16:25
we can argue about code and disagree but don't go saying I'm clueless when it comes to optimization
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:26
ya again, sorry
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:41
Internet doesnt convey thing properly as a real conversation, I guess I never intended to make a point that you are clueless. The point I wanted to make was why change things that aren't broken. If they don't work on Monogame, that's a point in favor of changing it, however, I do not think we should change it for windows when it works and works well. I do not see why you wouldn't wrap things. Mono game does this under the hood, so to say its a hack to call low level non managed frameworks is flat out wrong. That's how Mono works, that's how C# ultimately works. We can argue all day about the best way to do something, welcome to software development. In the end, spending time changing things that work does not help the current goal of finishing milestone features. Porting to MonoGame/Unity/Xenko has been talked about many many times. And ultimately there is a want to do this. I've even tried to do it in the past, but time got away from me, so it never got finished. Ultimately the decision to do this is @ZaneDubya 's but as we have said multiple times now, time is a factor. If you want to do all the work, great, submit a PR, it will be evaluated. But if you submit a PR, we are also entitled to our opinions even if they don't match yours. So, choice is yours, you don't like us, or the way we go about things, but for some reason you want to push this whole portability thing on our lap, which means we are supporting you. And you say that we don't have a constant requirement to support people with portability problems, yet here we are trying to support you. The issue with all this always goes back to time. Look at how much work was done on UltimaXNA over the past 6 months, really nothing up to this week. Its a slow moving project, with little to no time from the 1 and developer who does this as a hobby, and is not a software developer by trade. So, if he feels like he doesnt want to support it, its totally his decision and you should respect that, and not get mad that your wants and needs aren't getting attended to. Ultimately you have a decision, you can fork the code like you've done, make changes like you've made and submit PR's like you are doing, with this you need to be patient, have respect for whether they are used or not..... OR you can continue the project in your fork, and not submit anything and fully support a MonoGame port of your own. This is how I see it, if you disagree with any of it, sorry. This is not said it anger, discourage or push you away, I'm just stating how thing are from my point of view on this project based on history and knowledge of peoples current personal life situations. I hope we can squash the "issues" you have with either of us, contribution is appreciated, it just needs to align with our needs and not your wants.
</end_of_book>
Toni Spets
@hifi
Oct 26 2016 16:49
I'm not requesting support and I'm doing to port on my own time and just trying to upstream to you the bits that do make sense on every platform and I disagreed on your opinion about _lread because I feel differenly about optimizing prematurely
but I can't send you a magical full pull request that makes everything better, it's a gradual thing
and I definitely can't satisfy you on all fronts because portability will take some of the magic dust out that you have on Windows/XNA
requesting support (as a developer) is requesting you to debug my problems on my platform
I have not done that and I don't intend do but what I can't really do either is properly test the changes I submit on your platform so the only thing I do ask is that if I submit a pull request you test it before merging which should be something you do anyway for every pull request
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:53
Just FYI its not premature optimization, a lot of that code was pulled from another framework written long ago, and heavily optimized
So it was code previously optimized, so why nto leave it
i guess thats the better way to put it
Toni Spets
@hifi
Oct 26 2016 16:54
do you know it's still faster than the managed read
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:54
yes
Toni Spets
@hifi
Oct 26 2016 16:54
given the overhead of marshalling and pinvoke
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:54
yes it is
personally tested
this is my project where a lot of it comes from i think
and UltimaSDK
quite possibly UltimaSDK for the _lread actually
Toni Spets
@hifi
Oct 26 2016 16:54
and even if it is, I don't agree it's good practice
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:55
why?
A very very very large portion of .Net and Mono is pinvokes
Toni Spets
@hifi
Oct 26 2016 16:55
we don't want to do this again, I'll just keep doing what I already did, wrap the native call
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:55
infact all of File IO is ultimate a pinvoke call
Toni Spets
@hifi
Oct 26 2016 16:56
probably is, but since it is a pinvoke in the end, let the framework handle it
if the framework is ten times slower as you said, there must be a bug somewhere
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:56
well then you add unecesary overhead tho
its the managed overhead
but anyway
lets not quivel about this
its probably fine this day in age
to switch to managed
as you said
point is it was there for a reason at some point
and it still works
so why spend time changing it
Toni Spets
@hifi
Oct 26 2016 16:57
that's why I sent the pull request, there was probably a reason at some point but there should be no reason today
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:57
im all for moving forward, not addressing shit that currentl works ;)
so if zane pulls it in fine
Toni Spets
@hifi
Oct 26 2016 16:57
changing it makes the code a little bit more readable and less code anyway
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:57
if not, meh
i dont care either way
Toni Spets
@hifi
Oct 26 2016 16:57
and the portability point you don't care
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:57
agree to disagree ;)
dude
i think you have me all wrong on portability
ive been all for it for years
ask @ZaneDubya ive tried to push him to MonoGame and Paradox3d (now Xenko)
i got shot down... 2x or more
so i stopped, and just respect his decision
I understand his decision
he doesnt have time to support it
Toni Spets
@hifi
Oct 26 2016 16:59
the difference between you and I is that I don't
Jeff Boulanger
@jeffboulanger
Oct 26 2016 16:59
you dont respect his decision?
Toni Spets
@hifi
Oct 26 2016 17:00
frankly, no
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:00
you dont respect his decision in his own project? Seems awfully self centered dont you think?
I mean look at it this way
Toni Spets
@hifi
Oct 26 2016 17:00
if I would respect it, I wouldn't have started my thing, right?
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:00
how should we respect you at all?
Toni Spets
@hifi
Oct 26 2016 17:00
no, you shouldn't
you should only look at the code
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:00
incredible
Toni Spets
@hifi
Oct 26 2016 17:01
and if you disagree, fine
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:01
never meet anyone like you man, going against the grain and dont give a fuck
Toni Spets
@hifi
Oct 26 2016 17:01
it's the way I work
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:01
You want ppl to help you, support you, take your advice, take your code, take you seriously but publically tell everyone you dont give a fuck about there opinions or respect decisions made, bold ;)
Toni Spets
@hifi
Oct 26 2016 17:02
you got the first two wrong
I still don't want help or support
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:02
ok well, with all that i guess we can just move on, ill just let @ZaneDubya handle it all from you cause we wont get a long and its not worth my time
you jus said you want us to test your code
that is support
lol
crazy guy
Toni Spets
@hifi
Oct 26 2016 17:02
no, the pull request is against your project, not mine
any sane maintainer will test it and reject if it's broken
and tell the code is bad
and that I should feel bad for sending a bad pull request
but I did not, even once, ask you to test monogame only code or to help me fix monogame or to translate some ultimaxna stuff to monogame
I have, however, asked other people for help and I send bug reports to MonoGame repository about issues I encounter when I port
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:04
so what happens if we dont take the changes, how does it affect your time and project?
like, is this all at a loss for you?
Toni Spets
@hifi
Oct 26 2016 17:04
either I get fed up and discontinue it like I said in the original issue or more people join me and we create something else
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:05
interesting
there is some sort of disconnect for me, maybe its an age thing
Toni Spets
@hifi
Oct 26 2016 17:05
regardless how much I don't like trying to force portability upstream I would still keep it open
I've been in this situation a few times and sometimes I win, sometimes I lose
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:06
why care about win or lose tho?
Toni Spets
@hifi
Oct 26 2016 17:06
so it comes down to if I'm right or not
that's really what a "win" means
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:06
hm
Toni Spets
@hifi
Oct 26 2016 17:07
I don't care if I'm wrong either, it comes out eventually if I am
like, if what I'm currently doing with UltimaMono is a complete waste of time and I'm doing it completely wrong, someone possibly points it out at some point if they care enough
and have good arguments backing it and can provide a better solution
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:08
just seems like you are always out to prove something with those statements
Toni Spets
@hifi
Oct 26 2016 17:08
of course the arguments would need to tickle me just right to accept them and that's a project leadership position
either people would do it my way or would fork my fork and do it their way
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:09
ok well @hifi I wish you the best (no sarcasm).
Toni Spets
@hifi
Oct 26 2016 17:09
then there's the behevolent dictator for life position
as long as you can put up with me we're good
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:10
i can put up with anyone, i do it for a living
but at some point put up with becomes ignore
Toni Spets
@hifi
Oct 26 2016 17:11
well, I have people at work who I positively argue with and some that I can't argue with and I don't even try
but it's the same kind of situation like we have
I can't agree with the person, we just can't so we don't even try
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:11
argueing is fine, so long as the argument is needed
if its arguing a point that is just because, its not worth my time
also showing some amount of respect for people goes a long way, even in a github open source world
Toni Spets
@hifi
Oct 26 2016 17:13
it might be cheesy but I'm a lot like Torvalds
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:13
and those that dont show respect, or a desire to want to be respectful, pretty much end up on the ignore list for me
Toni Spets
@hifi
Oct 26 2016 17:13
with the difference of skill set
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:14
ya, thats like the interview question "What do you feel about yourself is a weakness"
most people explain a weakness that is a strength
or that can be viewed as a strength
So comparing yourself to Torvalds can be looked at in 2 ways
lol
depending on the person i suppose
Toni Spets
@hifi
Oct 26 2016 17:15
I'm a total dick when it comes to it but I can overcome issues when there are results
you have seen me complain on github and here so
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:16
ya, i just dont understand why you would expect people to want to cooperate with someone with that kind of attitude
Toni Spets
@hifi
Oct 26 2016 17:18
it's the way both of you communicate
it doesn't really bring the best out of people who have strong opinions
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:19
explain?
what is it that we did or are doing that rub you the wrong way?
like, initially
Toni Spets
@hifi
Oct 26 2016 17:21
you spoke on behalf of @ZaneDubya and closed the issue immediately
even if it was a standard protocol for you guys
that feels like a slap in the face after you've really spent time on something cool in your own time
and closing the issue from comments didn't really help
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:22
Ok, fair enough probably uncalled for
Toni Spets
@hifi
Oct 26 2016 17:22
given that I was already written something and did something to the way of portability it wasn't well received
so naturally I got annoyed
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:23
I still stand behind my points, and they were validated when Zane returned
but thats fine
sorry to have "slapped you in the face"
Something to consider for constructive critizism
maybe before doing a shitload of work, talk to the group and see if its wanted
Toni Spets
@hifi
Oct 26 2016 17:24
you can see how my tone changes from "calmn and kind" to the normal dick that I am
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:24
usually thats how i go about things
This way your time doesnt feel wasted
Toni Spets
@hifi
Oct 26 2016 17:24
I'm always nice when people agree with me :p
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:24
especially in a open source world
well, life lessons to be learned
that doesnt always happen
Toni Spets
@hifi
Oct 26 2016 17:25
then I'm not nice and life goes one as shit as it was before, just temporarily more shit
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:25
i think it goes both ways
Toni Spets
@hifi
Oct 26 2016 17:25
I really didn't think you wouldn't want it to be ported now
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:25
me being out of line, and you jumping to immediate asshole mode
doesnt really help either
just fyi ;)
Toni Spets
@hifi
Oct 26 2016 17:26
but we're apparently on the same page enough we are not on each others throat
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:26
im pretty reasonable tbh
Toni Spets
@hifi
Oct 26 2016 17:27
I'm not that unreasonable when it comes down to something else than portability
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:28
Well, performance, readability, and clean concise, proper code are my points of stubborness
Toni Spets
@hifi
Oct 26 2016 17:29
I take readability over performance until performance becomes an issue
reverting performance things in favor of readability/cleanliness in this case in my opinion was called for
but that's the thing, we don't agree on that
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:30
i think the disagreement is on what readability is ;)
i cant say to much on this point for uxna in general really
Toni Spets
@hifi
Oct 26 2016 17:31
anything unsafe { } is a big red flag for me if it's not strictly needed
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:31
depends on why its used
Toni Spets
@hifi
Oct 26 2016 17:32
BoundingBox calculations were off-by-one on MonoGame
because of UltimaXNA and me trusting your code was correct, it's being fixed I suppose
BoundingBox.Contains(Vector3) to be more precise
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:34
And those are the kind of issue @ZaneDubya doesnt wanna deal with while porting at this time :(
Toni Spets
@hifi
Oct 26 2016 17:34
no, I didn't ask for your help or support :p
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:34
i know
i just stating these are the things that will make milestones stay where they are in porting
having to deal with new framework bugs do to a new framework
Toni Spets
@hifi
Oct 26 2016 17:35
and I'm dealing with those issues now as I've promised
I've hit multiple bugs on MonoGame and reported them
and at this point seems all of them have been verified and fixes are in the works
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:37
I really wish we could port to Xenko over MonoGame
MonoGame has so many issues and uses SharpDX on windows, which is written by Xenko, and has more fixes due to that.
Toni Spets
@hifi
Oct 26 2016 17:37
actually you can use DesktopGL on Windows as well
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:37
oh they switched?
Toni Spets
@hifi
Oct 26 2016 17:37
you can do both
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:37
ah
Xenko's engine is so much better imo
Toni Spets
@hifi
Oct 26 2016 17:38
MonoGame has its issues but I'm dealing with them now to make it playable on Linux
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:38
written for parallel processoring, coroutines built in, easy scripting engine, etc
Toni Spets
@hifi
Oct 26 2016 17:38
just stop slapping me with the support thingy and we're fine
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:38
lol
Toni Spets
@hifi
Oct 26 2016 17:39
seriously, that triggers me :p
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:39
apparently
Zane Wagner
@ZaneDubya
Oct 26 2016 17:39
Hey jeff, @hifi. I just wanted to set the record straight: I closed #432, not Jeff. I tried to be clear as to my reason as to why I closed it: because it was out of scope. I'm not able or willing to participate or support a port to multiple platforms. I appreciate that you're willing to try, and I hope you're having fun doing it. I spend time on UXNA for fun, and if you can get the same thing out of it, I encourage that. :)
I don't want to relitigate the code issues you discussed above. I'll review #439 when I get to it - my time is limited, and it may take a while.
Toni Spets
@hifi
Oct 26 2016 17:40
did you happen to read the backlog?
it's not very pretty
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:40
backlog for what?
Toni Spets
@hifi
Oct 26 2016 17:40
this channel, meant Zane
and you just triggered me, I'm out
good night
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:41
lol
Zane Wagner
@ZaneDubya
Oct 26 2016 17:41
I want to add my two cents with regards to respect. While I don't have a formal code of conduct for this project/chatroom/etc - and I don't think one is necessary - I think it nonetheless important that people feel welcome and respected. 99% of the interaction between people who have submitted code to this project and people who are interested is really really positive, and I don't want to lose that to what someone could reasonably infer as someone being not respectful. Which is why I editted the title of #439 a few hours ago. When I read the title initially ("useless", I think, was the word you used), I thought that it could be easily rewritten in a way which would not have upset anyone, and so, I edited it to reflect that. One word change => much improved.
Yes, read it all.
That's why I've been lurking.
With regards to your statement about how important respect is - my feelings are very strong on this matter - I believe that showing respect for other people is really important, and that respect is deserved, not earned. People who do not feel the need to respect other people do not belong here.
I'm sure this won't be an issue though!
Toni Spets
@hifi
Oct 26 2016 17:44
I think the difference is that I'm not your regular contributor who's just happy to get something in, I strongly want UltimaXNA succeed and UO to live forever and I think I know better than you which is the issue at hand
emphazising the word "think"
I've written projects from scratch when the original maintainer disagrees with my pull requests but this is not a project you just write from scratch overnight
it needs to succeed as UltimaXNA and not as a fork
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:46
so elitist man, chill out. "I know better thank you which is the issue at hand" get off your high horse
we are here to have fun, write some code, chill out
Toni Spets
@hifi
Oct 26 2016 17:46
you cut out the important word
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:46
no i didnt
Toni Spets
@hifi
Oct 26 2016 17:46
I'm Finnish, I'm blunt
Zane Wagner
@ZaneDubya
Oct 26 2016 17:46
I am willing to consider what you submit. I'm not going to promise to integrate everything you send my way. And if the code you submit isn't what I agree with, I won't integrate it.
Toni Spets
@hifi
Oct 26 2016 17:46
I can be wrong, though
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:46
you cant just say im blunt and expect it to be an excuse for being a dick and an asshole
Zane Wagner
@ZaneDubya
Oct 26 2016 17:47
I can't be more straightforward than that.
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:47
just try to get a long
christ
Toni Spets
@hifi
Oct 26 2016 17:47
now I triggered you
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:47
not really just crazy
im smiling really
Toni Spets
@hifi
Oct 26 2016 17:47
there are two of us then
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:47
ive never meet anyone like you, it amazes me
Toni Spets
@hifi
Oct 26 2016 17:48
as long as it doesn't really offend you and just amuses you, it's fine, right?
@ZaneDubya that's your right as the maintainer and you always should only consider the code and code only
if you can ignore my personality, that is
Zane Wagner
@ZaneDubya
Oct 26 2016 17:49
Toni, if you disagree with me, you are 100% free to carry on in UltimaMono. And use any and all of the code from UXNA.
Toni Spets
@hifi
Oct 26 2016 17:50
but that's the thing, I disagree with you but I disagree with the fork approach
as a long term solution, I mean
Zane Wagner
@ZaneDubya
Oct 26 2016 17:50
Ah, but UltimaXNA is just a name!
(And not a very good one, at that!)
Toni Spets
@hifi
Oct 26 2016 17:50
as a test bed to upstream the good bits, sure
but as a long term solution it doesn't seem like a good idea
there are not enough developers in the world to work for one of the projects
they must be only one project
and if what I'm doing isn't going to ever end up in UltimaXNA, that will be a shame, or even parts of it
but that's life and I will be a bit bitter but I'm Finnish so I'm constantly bitter about something so it'll pass
Zane Wagner
@ZaneDubya
Oct 26 2016 17:52
Well, then your options are to accept that you and I are not going to agree on what will be included in the Client, or to fork and do your best to make yours the one true open source client. ;)
Hey! I heard that the Finns are fun.
Honestly, if you look at the pace of development on this repo - it's at a stand still.
Currently on track to finish some time next decade. Maybe ;)
Toni Spets
@hifi
Oct 26 2016 17:53
given the state of UltimaMono, there will not be a lot of code duplication when MonoGame gets the fixes it needs
except in the input handling and such
Zane Wagner
@ZaneDubya
Oct 26 2016 17:53
Well, I guess we can wait for that.
Toni Spets
@hifi
Oct 26 2016 17:53
but that's not duplication, those are full rewrites
Zane Wagner
@ZaneDubya
Oct 26 2016 17:53
Ooof, yeah, the input handling. That was days of work.
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:53
input handing is gonna be a pain
Zane Wagner
@ZaneDubya
Oct 26 2016 17:53
I don't envy you rewriting that.
Toni Spets
@hifi
Oct 26 2016 17:54
the quick hack I wrote works well enough for testing now
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:54
xna style frame by frame input handling is terrible, hopefully monogame doesnt require that
Toni Spets
@hifi
Oct 26 2016 17:54
it's not pretty but it works
of course it requires that
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:54
ya thats awful :(
Toni Spets
@hifi
Oct 26 2016 17:54
and there's really no reason not to do that
because it works well enough for UO kind of game
for a high paced fps? maybe not, don't know
Zane Wagner
@ZaneDubya
Oct 26 2016 17:55
@hifi That's not the case. We wouldn't have written our own bespoke input system if it wasn't necessary. ;)
Toni Spets
@hifi
Oct 26 2016 17:55
but the responsiveness of MonoGame with the frame-by-frame update seemed just fine for mouse
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:55
the downside is you have to write code for key repeating at a OS level, which is what ultima did, it took windows key events in a timed windows pattern, same as windows forms. Thats what players are use to, thats why we chose the same approach
Toni Spets
@hifi
Oct 26 2016 17:55
that's again something we disagree but those bits we can disagree with
Zane Wagner
@ZaneDubya
Oct 26 2016 17:55
Keyboard input in XNA (MG has the same issue) can lose key events because you can only get the state of the keyboard, not the actual key presses.
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:55
it was more for parity
parity and feeling vs what xna offers
of course it can be done with xna, but parity-wise it wouldnt feel the same
Toni Spets
@hifi
Oct 26 2016 17:56
I can't use the native windows input handling you have anyway so there's really no reason to discuss about it
and I'm going to go with managed input handling of MonoGame as a portable approach until proven it really sucks
I haven't actually played with it yet so I can't say how it performs in that situation
but it doesn't seem to be that bad
I heard you can request keypress events for text input separately so that's something
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:57
it just doesnt feel like the classic client
Toni Spets
@hifi
Oct 26 2016 17:57
that could be, but nothing feels like the windows classic client on non-windows anyway
Zane Wagner
@ZaneDubya
Oct 26 2016 17:58
cya all, lunch is over.
Toni Spets
@hifi
Oct 26 2016 17:58
wine isn't pixel perfect when it comes to input
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:58
from a macro point of view, if macros dont perform at the same interval, it feels weird
but well see
Toni Spets
@hifi
Oct 26 2016 17:58
I would probably add something like Razor style macros
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:58
no ono
no no*
Toni Spets
@hifi
Oct 26 2016 17:58
and use the server handshake bits to determine what can be done
that's what people use anyway
in the long term
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:59
the example i always give is put the cursor in notepad, hold down a key, you will see how the type interval is about .25 of a second then it spams the key
windows input does this, the classic client works this way
thats why we chose the input we did
Toni Spets
@hifi
Oct 26 2016 17:59
you can emulate that
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:59
having to code that frame by frame is doable
Toni Spets
@hifi
Oct 26 2016 17:59
you can't use the OS settings directly but you can emulate it
Jeff Boulanger
@jeffboulanger
Oct 26 2016 17:59
but why when its done for you at an os level
Toni Spets
@hifi
Oct 26 2016 17:59
portability!
Jeff Boulanger
@jeffboulanger
Oct 26 2016 18:00
we werent interested in portability 5+ years ago when this was written
Toni Spets
@hifi
Oct 26 2016 18:00
I know, but I am now
Jeff Boulanger
@jeffboulanger
Oct 26 2016 18:00
ya
Toni Spets
@hifi
Oct 26 2016 18:00
so you let me hit my head against the wall as much as I want to
Jeff Boulanger
@jeffboulanger
Oct 26 2016 18:00
just justifying whi it was written this way
Toni Spets
@hifi
Oct 26 2016 18:00
and then curse at MonoGame/XNA for being what it is
I understood it right off the bat why you did it when I compared XNA input management to your code
Jeff Boulanger
@jeffboulanger
Oct 26 2016 18:01
"and there's really no reason not to do that" <-- justifying against this ;)
Toni Spets
@hifi
Oct 26 2016 18:01
mostly because keypress/repeat/layout
Jeff Boulanger
@jeffboulanger
Oct 26 2016 18:01
there was a reason hehe
"was"
anyway, like zane i gotta go
good luck
Toni Spets
@hifi
Oct 26 2016 18:02
and I should sleep
wife's getting mad because I'm arguing with you instead
Boberski
@TorchwoodPL
Oct 26 2016 19:22
geez guys, leave you for couple hours and I get 100+ messages to read :P
be nice and dont fight my childrens :P
Jeff Boulanger
@jeffboulanger
Oct 26 2016 20:42
:)
we all good
Zane Wagner
@ZaneDubya
Oct 26 2016 20:55
haha, we try!
:D