Fluorohydride / ygopro

A script engine for "yu-gi-oh!" and sample gui
GNU General Public License v2.0
1.83k stars 593 forks source link

Leadership Roles #1628

Closed Zayelion closed 7 years ago

Zayelion commented 8 years ago

So I admittedly have no idea what I am doing here but I will try my best.

Everyone that is currently working on a YGOPro variant in "some capacity" state what you do and for which variant. After that we will identify the needs of each group. From those needs we can hash out what code changes need to be done where and why.

Goals

After each person states what position and team they are on I'll add them to the following list so we have it as reference, then we can elect leaders out of each group or assign work based on that as need be

Translated with @mercury233 help:

前言:ygopro的很多修改版都增加了音效、皮肤、窗口缩放等功能,但却是相互独立的,存在明显的“重复发明轮子”现象。因此Zayelion想做点什么来改变这个情况。

首先要统计出现在参与ygopro的人,有什么能力,在做什么,在哪个修改版。然后我们确定各个团队的需求,根据这些需求得出我们需要怎样修改代码。

目标 统计多少人参与ygopro相关,以及他们重复的工作 确定现有的领导者 列出各个领域的人的共识 实现大家需要的东西,更好的服务于游戏王环境 建立某种形式的领导者团队

大家请在这里写下自己的位置和团队,我会把它们加到下面的列表里。

Variant Owners @zh99998 @SuperAndroid17 @Zayelion @Moonlightsorrow @mercury233 @Tic-Tac-Toc

Client @IceYGO @adrianojn @sidschingis

Launcher/Server @IrateGod @StormWulf @ChibiChanNya @westcoastkiwi @GuybrushThreepwoodSD @IceYGO @0mniMage @sidschingis

Scriptors @ChibiChanNya @StormWulf @HelixReactor @KoneSkirata @destdev

Quality Assurance / Testers @BlackBallista @Laughing-Luna @StormWulf @KoneSkirata @destdev @GuybrushThreepwoodSD @LordVyro

Images @ParryDox @CollateralDamage @KoneSkirata @destdev

Community Management @CollateralDamage @TheHolyTrinity @KoneSkirata @destdev @0mniMage @LordVyro

ghost commented 8 years ago

Card Image Maker @SalvationDevelopment. Waiting for BOSH TCG release to do a mass update on the card images with TCG names (and better pictures).

BlackBallista commented 8 years ago

QA/tester for @SalvationDevelopment.

StormWulf commented 8 years ago

I think that I've collaborated in almost everything, so perhaps put my name for Launcher/Server, Scriptors, and QA. I have done images too, but only with YugiohCardMaker and copying from other sources.

IrateGod commented 8 years ago

Launcher and Server manager, JavaScript developer. @SalvationDevelopment

Laughing-Luna commented 8 years ago

QA tester and judge for @SalvationDevelopment

ChibiChanNya commented 8 years ago

Leader of card scripting team (resolve bugs and QA), chief card DBs administrator and have also done some code for launcher features. All @SalvationDevelopment

CollateralDamage commented 8 years ago

Head IRC administrator, graphics (literally everything aesthetically) in the game (themes/in-game bg images) is made by me, tournaments and other community things for @SalvationDevelopment

TheHolyTrinity commented 8 years ago

Tournament Director,Community Management, and Forum Administrator. @SalvationDevelopment

"I make sure users and programmers/staff get along."

A-Belaid commented 8 years ago

LUA scriptor (card making and bug fixing) for @SalvationDevelopment

KoneSkirata commented 8 years ago

Making images, supervising card updates, QA/testing (and sometimes scripting) cards, some forum, facebook and community work now and then, leader of the staff's german divison, all for YGOPro DevPro.

destdev commented 8 years ago

I'm scripting DevPros cards (basicly 95%, everything Kone doesn't script^^) and I also handle the majority of the reported card bugs. If necassary I'm also able to push hotfixes (scripts only) to the server.

westcoastkiwi commented 8 years ago

I code some CSS/HTML and kinda sorta JS. Mainly deal with translation implementation and deck editor atm. I work on launcher/server @SalvationDevelopment?

SuperAndroid17 commented 8 years ago

SuperAndroid17, Current owner of YGOPro DevPro and the server, Head Database Manager, YGOPro DevPro English website, FaceBook and YouTube manager.

Edit: It's been a while since i've seen most of you....HI!

Zayelion commented 8 years ago

Hi!

Ok so notes, Variant Owners are those of us that foot the bills and do the large part of the management of staff for the YGOPro distributions, we may or may not have technical abilities. Their roles are usually multifaceted and they are architects of sorts.

Client People that work on ygopro/gframe, and ygopro-core making edits in C++. Each variant has a fork of ygopro and maintainers that "usually" have not been about to land commits in regards to the gframe and are the most effected when other variants do land gframe edits, this group needs the most coordination. This includes AI, bots, and ygopro/ygopro2

Launcher/Server is for people working on the ygopro, ygopro-core and variant softwares with alternative gframes like ygosharp, or gframe launching systems. They make/manage software that allows people to play at scale. That means an application that directly delivers content to the user and manages their connect to other users. If you are envisioning it as a LAN client relationship you are thinking of it wrong, its more of a Client-Server-Client relationship.

This also includes

Scriptors work with ygopro-scripts and land pull request against it or their variants own repository.

Quality Assurance / Testers make sure the cards, server, and launchers work [1] and test that everything is ok before it is shipped to end users in a normal Agile Development work cycle [2].

Images, for people again maintaining the visual aspect of ygopro/pics like ygopro-scripts the other variants have it broken out, finally community management each system has a way of interacting with users so their wishes and concerns are met to keep them happy.

[1] ygopro lacks unit and regression testing, this is very scary. No the replay system does not count. [2] ygopro-scripts and image making uses a "Kanban" system, SCRUM or something similar for the rest of the planning is my suggestion.

KittyTrouble commented 8 years ago

QA Testing, Server, Tournament Director for @SalvationDevelopment

IceYGO commented 8 years ago

Hi. I'm some independent C# server and bot developer, specialized in network development. Present on DevPro, TDOANE and BattleCityAlpha. I also do some C++ client-side development from time to time.

Edit: Server/Launcher. I don't own any variant nor program any launcher.

Zayelion commented 8 years ago

@IceYGO variant owner or Server/launcher, also we need Percy and seto to speak up x.x

Zayelion commented 8 years ago

Im gonna try to list off some previous conversations as points as we move to the next bit. I know there are 10 variants, and around 70-100 people that fit the bill for discussion in this thread, so this is gonna get pretty wild pretty quick.

ghost commented 8 years ago

MoonlightSorrow, Owner of @InzektorPro, Database Manager,Client Manager and Facebook manager.

0mniMage commented 8 years ago

OmniMage. Launcher and some Community Management, QA in a pinch @SalvationDevelopment

Zayelion commented 8 years ago

To make sure this discussion doesnt "die in a fire", and we can involve the user base, anyone that has a forum open a thread for user discussion and link it here?

mercury233 commented 8 years ago

Host a server(using FH's code and @woodee 's database release), and host some pre-release cards. 建立了一个服务器(使用原版的代码和woodee发布的数据库),并维护一些先行卡。

https://github.com/mercury233/ygopro-server https://github.com/Daniel17173/ygopro

ghost commented 8 years ago

I help manage the launcher and server. I edit the database, help QA Test, answer bug reports, I'm one the chief community managers, I act as one of the head judges on Salvation, I try to assist with the business and economics aspect of Salvation, including but not limited to the financials. I help manage the IRC as one of the staff members consistently using it. @SalvationDevelopment

Snarkie commented 8 years ago

Zayelion asked me to post here, so I guess, I'll do that:

AI scripter for YGOPro Percy

Zayelion commented 8 years ago

@Snarkie Im not sure where to stick you, you code in lua but you work on an alternative gframe...

adrianojn commented 8 years ago

C++ and Linux developer on @SalvationDevelopment client.

sidschingis commented 8 years ago

Client Launcher/Server

Zayelion commented 8 years ago

Feel free to search and study "SCRUM" to follow me.

Ok I think that is everyone that is going to respond in the first wave. I sent other invites out, but everyone on this thread so far in addition to the team with write access (Im calling FH's Team) represent stakeholders in the YGOPro product

So first task each of the defined teams start by sounding off what features you want to add to the system, or are planing on adding.

@DailyShana and @Tianchenglipu Im requesting that you join in on the discussion else it isnt going to go anywhere.

We are going to need access to Milestones.

ghost commented 8 years ago

I'm a freelancer and is not in a team, can make/fix scripts and some easy c++. I can deal with some difficulties on card scripting, because I'm experienced on designing and making cards myself.

mercury233 commented 8 years ago

Pre-release cards.

As I know, there are at least 6 teams or people working on pre-release cards scripts: Salvation, Ygopro.co, ADS, YGOPOT, ygohack137, and me.

In general, they work independently, one card has serveral versions of script, card passwords and setcodes are different.

Sometimes one team borrowed scripts from another team, after that them fixed some bugs, but didn't submit to the source, maybe because different setcodes and passwords drive man crazy.

Finally, it is time for official update, one team submit their scripts to FH's repository, or FH's team create it on their own.

This situation is terrible, should we work together to reduce duplication of work? Share scripts, use same passwords and setcodes, finally our scripts can be directly committed to FH's repository. And our works will be much more easy.

先行卡。

据我所知现在至少有6个团队或人在做先行卡:Salvation, Ygopro.co, ADS, YGOPOT, ygohack137, 和我。

整体上他们都是各自独立工作的,一张卡有好几个版本的脚本,卡的密码和setcode也都不相同。

有时一个团队会从另一个那里借用脚本,之后他们修复了一些bug,但没有向来源提交,可能是因为不同的密码和和setcode实在太蛋疼了。

最后,到了正式更新的时候,一个团队把自己的脚本提交给了原版,或者原版的开发者自己写了脚本。

这种情况太糟糕了,我们能合作来减少重复的工作吗?共享脚本,使用相同的卡片密码和setcode,最后我们的脚本就可以直接的提交给原版。这样我们的工作就会变得更轻松。

Zayelion commented 8 years ago

What are YGOPROT and ADS and how do they differ from the other variants @mercury233

ghost commented 8 years ago

Devpro also does pre-release cards scripts

destdev commented 8 years ago

Maybe it's just me, but I generally like scripting everything on my own ... even if that means that I just c&p effect parts from other scripts and changing those until they fit the new card, but it still feels as my own work... and I like doing that^^ Of course it's always good to have one or another helping hand like the past week, when 45674858+-2 cards want to get updated at once ... seriously, without Kone I wouldn't have been able to do all 35 cards for tomorrows update, along with the fact that Pre-Prep is still giving me slight headaches because fluoro also seems to prepare all those ritual spells now ... and those start to slightly conflict with the ones I prepared about 3-4 days ago^^

I'm not sure how all you guys think about sharing scripts, at least I wouldn't mind sharing mine if requested (at least after they've been tested) ... what I don't like though is just c&p other scripts for the same card if I don't have to, that just kills the whole excitement about the work. But that aside, I see the benefit of such a shared work to use if it becomes necassary... What I definitly agree with is, that a common system of setcodes is necassary, which shouldn't be too much of a problem ... unless there are multiple new setcodes necassary at a time there shouldn't be any differences just by using the next available number... maybe someone will volunteer for the work of doing and updating such a list as soon as new stuff is announced? I wont, because I can almost guarantee that I'll forget doing that sooner or later, along with the fact that I'm usually not very fast in such things :/ As for provisional card IDs ... in my oppinion, everyone can use whatever system they prefer, even if you use something else, the ids are switched in seconds. I can't really say that I'd feel too comfortable switching to the 1379[...] stuff ygohack is using or the quad IDs I've seen on salvation or whoever else has that... @Zayelion , ADS is usually short for Automatic Duelling System, you'll find dozends of japanese(? chinese? korean?) ADS Videos on youtube for ygopro no idea about YGOPROT though :/

ghost commented 8 years ago

I believe that there are too many ygopros,and that having that many spreads the resources thin. I also believe more work could be done if all or most of us work on one international sim,as apposed to 5-6 variants. I believe salvation's system for translations of the launcher +Devpro's idea of each language having its own chat would work the best.

StormWulf commented 8 years ago

Loadedtothemax, that's basically one of the intentions of this Git issue. Everyone has posted what responsibility they hold towards their respective simulator so that we know which ones could possible collaborate.

I also believe that we all should collaborate more on scripts, especially with FH's team. We need to come to an agreement with how to create setcodes that can remain consistent with FH's style so that we won't have to conform to whatever choice they pick. Perhaps all Lua scripters should communicate via Skype?

Zayelion commented 8 years ago

Each YGOPro has a niche for its users and programmers, communication method being one of them, additionally culture and language.

Depending on how you look at things there are to many YGOPro's or to few. Variant owners are created when someone manages to get their idea created but can not add it to the parent version for what ever reasons.

Dawn DevPro and Salvation are not going to get along in that regard we are each culturally distinct and to an extent rivals.

Maybe it's just me, but I generally like scripting everything on my own

This is why there are over 10 variants now... yes working on this project is fun but our focus should ONLY be about what the end-user sees.

ghost commented 8 years ago

People like Moonlightsorrow and others like Bromantic who are just starting out are only able to do the basics (ie compiling it) because of the problems the source code has. Some of the problems are that. A. The source code is a mess. Changes/fixes in the code are not being pushed into the main. Things like sound,themes,etc etc should already be in the main source code. B. There is little to no documentation on Ygopro and its code other than how to compile it. c. Because of a and b the skill level required to work on this is much higher than should be. People like @Buttys have tried to help by creating things like Ygopro x. Sims like Salvation and Devpro are doing good because they have worked on Ygopro for at least a year or more,so they have experience with it.. People new to the Ygopro code will be very confused. This all goes back to the resources thing. The number of people who have the skill to work on something like this is very low+the fact that none is going to work on this for free. The only reason people are working on this now for free is because they enjoy the game.

Zayelion commented 8 years ago

The changes changes that DevPro and Salvation have done to the source code have only been to keep pace with user expectations driven by the YGOPro.co team (Percy) users asked for the features he developed and were irate about it so when I was a variant owner at DevPro with @Buttys @IceYGO @Benblub and starstrike, we built them. Because the users had them there and wanted them at DevPro.

After Salvation split up from DevPro we kept the code that @Buttys developed for us ie YGOCore and YGOProX and used them until recently till @adrianojn and @IceYGO got us off of them. We've been completely helpless to the changes to ygopro that the FH team makes

Everyone knows that the ygopro code is a mess that is why @Fluorohydride is working on the ygopro2 branch, but its going god awefully slow and when ever someone talks about improving the software he cites that.

Summarizing we all as teams have 2 actionables. When new cards come out someone needs to post somewhere what the set IDs for that card(s) need to be. Second we need to decided what features need to be added to the mainline.

mercury233 commented 8 years ago

YGOPOT is a Chinese variant of YGOPRO, mainly developed by "姬可少女kelypot", mantained by "静水居的". It isn't open-source, doesn't has website for now. The release pages are http://tieba.baidu.com/p/3822333536, http://tieba.baidu.com/p/4167863291 . It's unique features are high res card images, gradient skin, summon splash or movie, and new replay system. Because it is Chinese, and has much features the other variants have, it was widely used by Chinese players.

ADS is short for Automatic Dueling System, Japanese variant of YGOPRO. I hadn't used it, and I don't know if it is open-source. I think it's unique features are link to card wiki, card pricing.

Zayelion commented 8 years ago

ADS and YGOPOT do they have launchers?

At this point I think its fair to add a thread for the scriptors to go off and set up the numbering/setcode system. I want to add to the suggestions that the scripts also have their official English names in the comments not just the Japanese names. The English names listed under the OCG ones.

Any objections?

mercury233 commented 8 years ago

ADS has built-in server like percy version or checkmate. YGOPOT's new launcher is under development, for now it has built-in server too.

I agree. Let us make some conventions about numbering/setcode.

Zayelion commented 8 years ago

https://github.com/Fluorohydride/ygopro/issues/1631 For the scriptors to continue on.


A large degree of uniqueness and personal ideals are expressed in the servers by the different variants, and @Buttys @matteoserva @yuyuhaso @garymabin @IceYGO and others have created amazing systems for others to build on easily. They all work in radically different ways with matching launchers. So I am not sure how to suggest how we go forward beyond all staying open source and well documented which for the most part we all have.

As for the client which features should be added first? I understand there are some issues as far as sound goes in a legal sense.

ghost commented 8 years ago

Adding to the mainline?

Zayelion commented 8 years ago

Yes, any discussion is pointed at editing this repository. Sorry professional programmer speak ;-)

ghost commented 8 years ago

So fh is on board?

Zayelion commented 8 years ago

I dont know, @salix5, @VanillaSalt, @VanillaSalt can we edit the software? Im assuming yes, its been more relaxed as of late (just insanely slow).

ghost commented 8 years ago

The basics should be added ie themes,resizing etc etc,and things like ots should be standardized. After that the features the other sims created should added back from most important to least.Work done on the source needs to be documented. People working on this shouldn't have to ask basic questions. Scripting cards is the only ygopro related thing with good documentation. https://github.com/GuybrushThreepwoodSD/Ygopro-Card-Creation

Zayelion commented 8 years ago

Client Feature List

Anything to add or remove from the above list, if not I can cut everything up into seperate task assign them to the client programmers to implement and provide examples of working code implementing each feature so there is little issue with difficulty.

@IceYGO @adrianojn @sidschingis

(Google Translate)

任何添加或從上面的列表中刪除,如果不是我能切一切成單獨的任務,將它們分配給客戶端程序員來實現,並提供工作代碼實現每個功能所以有困難的小問題的例子。

ghost commented 8 years ago

I think the list is fine for now.

Raigorn commented 8 years ago

I'm somewhere between testing, images, community management and being a voice of reason for DevPro. @Raigorn (WeekendWarrior)

I suggested a bunch of things on the Salv Forums but for whatever reason was told to bring these points up myself here. These requests are going to be limited towards the YGOPro variants.

Community

Deck Editor

Replays

Gameplay