ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Ищу человека для написания квеста (https://forum.antichat.xyz/showthread.php?t=786754)

DMI3Y 13.04.2023 23:02

Ищу человека для написания квеста для сборки nextgen. В самом квесте нужно сделать, чтобы заносилось в БД логина очки

Solution 14.04.2023 00:39

Напиши адекватное тз и пиши в личку

DMI3Y 14.05.2023 23:31

Кто поможет? а то Solution пропал куда-то

Se1dhe 14.05.2023 23:52

Цитата:

Сообщение от DMI3Y

Кто поможет? а то Solution пропал куда-то

шансы на помощь возрастут сразу после того, как тут появится ТЗ самого квеста

DMI3Y 15.05.2023 00:18

Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)

я прописал так:
  • mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account

А как сделать чтобы отправлялось в nextgen_login?

Пробовал так:
  • mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx

Psycho 15.05.2023 00:54

Цитата:

Сообщение от DMI3Y

Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)
я прописал так:
  • mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account
А как сделать чтобы отправлялось в nextgen_login?
Пробовал так:
  • mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx

Я конечно не разбираюсь, но что мешает залить все таблицы в одну базу, а не разбивать их на несколько?

Se1dhe 15.05.2023 01:03

Цитата:

Сообщение от DMI3Y

Но он ругается на setEx

А ругается как? матом?

Почему нужно вытягивать инфу?

Muerte 15.05.2023 02:23

Цитата:

Сообщение от DMI3Y

Делаю квест, в котором при нажатии строчки добавляется +1 очко в таблицу account в графу l2money (короче сколько итемовв столько и занесётся)
я прописал так:
  • mysql.setEx(L2DatabaseFactory.getInstance(), "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Он не добавляет, потому что в nextgen_game нет таблицы account
А как сделать чтобы отправлялось в nextgen_login?
Пробовал так:
  • mysql.setEx(LoginServerCommunication.getInstance() , "UPDATE `accounts` SET `l2money` = `l2money` + 1 WHERE login = '" + activeChar.getAccountName() + "'");
Но он ругается на setEx

так нельзя?

Цитата:


mysql.setEx(L2DatabaseFactory.getInstance("nextgen _login"), "UPDATE nextgen_login.accounts SET l2money = l2money + 1 WHERE login = '" + activeChar.getAccountName() + "'");


Gaikotsu 15.05.2023 04:29

В подобных ситуациях вобще по идее надо все делать через пакеты которыми обмениваются логин и гейм.

Т.е. гейм шлет пакет с нужными данными, логин его принимает и делает все что необходимо.

Чисто для примера подобное взаимодействие в овере на примере управления данными премиума:

гейм шлет логину пакет l2p\gameserver\loginservercon\gspackets\BonusReque st

логин на это реагирует пакетом l2p\loginserver\gameservercon\gspackets\BonusReque st, в котором вносит изменения в бд логина

Ну и если сервер один, то можно и не лезть в бд логина если надо что-то общее для всего акка писать, а просто завести новую таблицу в гейме, куда складывать все переменные общие для аккаунта. ну вобщем типа account_variables, аналог character_variables. Подобное может не раз пригодится для разных ситуаций.

У меня у самого примерно так и сделано - кроме стандартной таблицы для хранения разных перменных персонажа есть еще таблицы для хранения переменных аккаунта и переменных клана.

DMI3Y 15.05.2023 11:44

Цитата:

Сообщение от Muerte

так нельзя?

1. ERROR in C:\Users\Администратор\..... (at line 44)

mysql.setEx(L2DatabaseFactory.getInstance("nextgen _login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");

The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)

ругается на getInstance

Bloomfield 15.05.2023 11:50

Цитата:

Сообщение от DMI3Y

1. ERROR in C:\Users\Администратор\..... (at line 44)
mysql.setEx(L2DatabaseFactory.getInstance("nextgen _login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");

The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)

ругается на getInstance

ссылку на исходники дай, погляжу

DMI3Y 15.05.2023 11:59

Цитата:

Сообщение от Bloomfield

ссылку на исходники дай, погляжу

l2nextgen_last_7577.zip

drive.google.com

Muerte 15.05.2023 12:01

Цитата:

Сообщение от DMI3Y

1. ERROR in C:\Users\Администратор\..... (at line 44)
mysql.setEx(L2DatabaseFactory.getInstance("nextgen _login"), "UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = '" + activeChar.getAccountName() + "'");

The method getInstance() in the type L2DatabaseFactory is not applicable for the arguments (String)

ругается на getInstance

добавь поддержку String для getInstance в L2DatabaseFactory

DMI3Y 15.05.2023 12:02

Цитата:

Сообщение от Muerte

добавь поддержку String для getInstance в L2DatabaseFactory

Да уже додумался. Сейчас попробую и отпишусь

Цитата:

Сообщение от DMI3Y

Да уже додумался. Сейчас попробую и отпишусь

Код:


Код:

15/05/23 12:26:13 WARN  [GamePacket-TE[1]] l2n.database.utils.mysql    mysql: #setEx could not execute query 'UPDATE `nextgen_login.accounts` SET `l2money` = `l2money` + 1 WHERE `login` = 'administrator'':
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Table 'nextgen_game.nextgen_login.accounts' doesn't exist

добавил метод

Код:


Код:

}
    public static L2DatabaseFactory getInstance(String string) {
        // TODO Auto-generated method stub
        return null;
    }

и всё так же выдаёт ошибку

MasterJoke 15.05.2023 16:09

У тебя же написано что nextgen_game.nextgen_login.accounts' doesn't exist отсутствует

DMI3Y 15.05.2023 16:37

Цитата:

Сообщение от MasterJoke

У тебя же написано что nextgen_game.nextgen_login.accounts' doesn't exist отсутствует

Вот именно. Что в nextgen_game нет таблиц nextgen_login.account

Ребят я поэтому и прошу платную помощь

DMI3Y 15.05.2023 21:08

Цитата:

Сообщение от Se1dhe

А ругается как? матом?
Почему нужно вытягивать инфу?


Se1dhe 15.05.2023 21:25

Ну первым аргументом он ждет L2DatabaseFactory, а получает LoginServerCommunication

Bloomfield 16.05.2023 06:22

Цитата:

Сообщение от Se1dhe

Ну первым аргументом он ждет L2DatabaseFactory, а получает LoginServerCommunication

который вообще коннектится к гейму, по идее, надо выводить еще один инстант под логин, и подключаться уже к нему (или пихать все в один).

ну или как предложили выше - сделать адекватно, с пакетами

DMI3Y 16.05.2023 10:15

Цитата:

Сообщение от Bloomfield

который вообще коннектится к гейму, по идее, надо выводить еще один инстант под логин, и подключаться уже к нему (или пихать все в один).

ну или как предложили выше - сделать адекватно, с пакетами

Поможешь?

Bloomfield 16.05.2023 10:26

Цитата:

Сообщение от DMI3Y

Поможешь?

я могу взяться, но скорее всего я займусь этим только ближе к выходным (если еще чем-нибудь не нагрузят на основной работе), поэтому если терпит - заберу


Время: 16:29