Jump to content

Recommended Posts

Posted (edited)
lfcZk0R.png

We present our own voting system via web. Fully
configurable and synchronized with your server!


--> Available test online, try now! <--


User: l2jdevs1, l2jdevs2, l2jdevs3, ... | Password: l2jdevs1, l2jdevs2, l2jdevs3, ...
 
Images of vote panel web system
 
Quote

lfcZk0R.png

oPA4YZI.png

PLnefQi.png

pTukUOv.png

NDoGFgX.png
 

 



List and development status in which it is currently.

Green ------- Feature that has already been tested and added.
Orange ----- Feature in development or partially done.
Red --------- Feature is not yet available.
 

FEATURE LIST:
  • Login Panel
    • Check by name, ip and date. If you meet the requirements you can advance.
    • Shows the number of votes taken.
    • Possibility of changing language
  • Vote System
    • Protection time between vote and vote.
    • Button lock to prevent cheating.
    • Show indicated votes in the xml list.
  • Selection of Character
    • Show characters from that account who are offline.
    • Select the character to send the reward to.
  • Rewards System
    • Send reward to the player indicated above.
    • Possibility of sending reward to the player's inventory or to his warehouse.
 

LIST OF IMPLEMENTATIONS:
  • Connection to the server, gameserver and independent loginserver.
  • Voting list using XML.
  • IP address and time protection system.
  • Multilanguage system.
  • Personal configuration file.
  • Programmed in PHP, JS, XML and MSQLI.
 

AVAILABLE LANGUAGES:
  • English
  • Spanish
 

MORE INFORMATION:
Edited by u3games
Posted

this can never be legit and you cant prevent cheating, what if i change my ip, add new character and do this like 10 times, is that abuse? yes. so i just cheated on any server has this system.

Posted
19 hours ago, u3games said:
lfcZk0R.png

Apresentamos nosso próprio sistema de votação via web. Totalmente
configurável e sincronizado com seu servidor!


-> Teste disponível online, experimente agora! <-


Usuário: l2jdevs1, l2jdevs2, l2jdevs3, ... | Senha: l2jdevs1, l2jdevs2, l2jdevs3, ...
 
Imagens do sistema web do painel de votação
 

 



Lista e status de desenvolvimento em que se encontra atualmente.

Verde ------- Recurso que já foi testado e adicionado.
Laranja ----- Recurso em desenvolvimento ou parcialmente concluído.
Vermelho --------- O recurso ainda não está disponível.
 

LISTA DE RECURSOS:
  • Painel de Login
    • Verifique por nome, ip e data. Se você atender aos requisitos, poderá avançar.
    • Mostra o número de votos realizados.
    • Possibilidade de mudança de idioma
  • Sistema de votação
    • Tempo de proteção entre votação e votação.
    • Bloqueio de botão para evitar trapaça.
    • Mostrar votos indicados na lista xml.
  • Seleção de personagem
    • Mostre personagens dessa conta que estão offline.
    • Selecione o personagem para o qual enviar a recompensa.
  • Sistema de Recompensas
    • Envie a recompensa para o jogador indicado acima.
    • Possibilidade de envio de recompensa ao inventário do jogador ou ao seu armazém.
 

LISTA DE IMPLEMENTAÇÕES:
  • Conexão ao servidor, gameserver e loginserver independente.
  • Lista de votação em XML.
  • Endereço IP e sistema de proteção de tempo.
  • Sistema multilíngue.
  • Arquivo de configuração pessoal.
  • Programado em PHP, JS, XML e MSQLI.
 

IDIOMAS DISPONÍVEIS:
  • Inglês
  • espanhol
 

MAIS INFORMAÇÕES:

download link?

Posted (edited)

source download link is dead, but even by eyeballing demo it seems to miss most important check, if user actually voted xD just go straight to rewards.php and claim your shit

Edited by AlmostGood
Posted
On 9/18/2020 at 10:44 AM, iTopZ said:

this can never be legit and you cant prevent cheating, what if i change my ip, add new character and do this like 10 times, is that abuse? yes. so i just cheated on any server has this system.

 

In my case, the item you provide is a quest item, and it cannot be traded. (Everything has a solution) The idea is "more votes, better".

The system currently works with: login-account, IP and Time vote.

 

15 hours ago, AlmostGood said:

source download link is dead, but even by eyeballing demo it seems to miss most important check, if user actually voted xD just go straight to rewards.php and claim your shit

 

Link updated, I already added public permissions.

It is a relatively new project, to begin with it is not bad at all (and it is free). The idea is to improve it together.

 

In the future the idea would be an API to check if you have really voted or not.

 

Posted
7 hours ago, u3games said:

In my case, the item you provide is a quest item, and it cannot be traded. (Everything has a solution) The idea is "more votes, better".

The system currently works with: login-account, IP and Time vote.

thats what i told you, a user can fake his ip, and have more than 1 account, its the main issue with all vote systems, you need to rely on a third party program (smartguard/sguard/stryxguard etc) and use their hwid (this can still be spoofed but not that easy as changing IP with a simple router restart)

  • 1 month later...
  • 1 month later...
Posted
On 10/21/2020 at 6:11 AM, xxPaNtHeRxx said:

we have problem with the password  The password you entered was not valid   web site base on ghtweb 5

??

Test and work ^^

  • Vision locked this topic
Guest
This topic is now closed to further replies.


  • Posts

    • Verify if following is supposed to be the way to handle movement npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(point.getX(), point.getY(), point.getZ())); For me, it's not enough. And if it's the case, whole AI system is probably buggy.
    • hello, i want to wtt my charracter in l2elmorelab 1x harbor for 1.5kkk adena in l2reborn 10x new. Or if you interested tell me your offer. :)) Clean Mail 30 lvl Cleric Naked   Updated.
    • package ai.npc.NFWalker; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Random; import l2r.gameserver.enums.CtrlIntention; import l2r.gameserver.model.Location; import l2r.gameserver.model.actor.L2Npc; import l2r.gameserver.model.quest.Quest; import l2r.gameserver.network.clientpackets.Say2; import l2r.gameserver.network.serverpackets.NpcSay; public class NFWalkerAI extends Quest { private static final int WALKER_NPC_ID = 20116; private final Map<String, Route> routes = new HashMap<>(); private final Map<Integer, Integer> npcIndexes = new HashMap<>(); private final Map<Integer, Boolean> npcReverse = new HashMap<>(); private final Map<Integer, String> npcCurrentRoute = new HashMap<>(); public NFWalkerAI() { super(-1, NFWalkerAI.class.getSimpleName(), "ai/npc/NFWalker"); loadRoutes(); addSpawnId(WALKER_NPC_ID); } private void loadRoutes() { // Route 1 Data Route route1 = new Route("route1"); route1.addPoint(new RoutePoint(0, 149363, 172341, -941, 0, false, "")); route1.addPoint(new RoutePoint(1, 148568, 172328, -980, 5, true, "Puff")); route1.addPoint(new RoutePoint(2, 148536, 172792, -980, 0, false, "")); // Route 2 Data Route route2 = new Route("route2"); route2.addPoint(new RoutePoint(0, 149363, 172341, -941, 0, false, "")); route2.addPoint(new RoutePoint(1, 150248, 172328, -980, 5, true, "Rise my children! Bring me the servants of the god! Let them be offered to our god Bifrons!")); route2.addPoint(new RoutePoint(2, 150248, 172776, -980, 0, false, "")); // Add routes to the map routes.put("route1", route1); routes.put("route2", route2); } @Override public String onSpawn(L2Npc npc) { if (npc.getId() == WALKER_NPC_ID) { selectInitialRouteForNpc(npc); } return super.onSpawn(npc); } @Override public String onAdvEvent(String event, L2Npc npc, l2r.gameserver.model.actor.instance.L2PcInstance player) { if (event.equalsIgnoreCase("move")) { moveNpc(npc); } else if (event.equalsIgnoreCase("check_reached")) { checkIfReached(npc); } return null; } private void moveNpc(L2Npc npc) { String routeName = npcCurrentRoute.get(npc.getObjectId()); Route route = routes.get(routeName); Integer pointIndex = npcIndexes.get(npc.getObjectId()); if (route != null && pointIndex != null) { RoutePoint point = route.getPoints().get(pointIndex); if (point.isRun()) { npc.setRunning(); } else { npc.setWalking(); } if (!point.getChat().isEmpty()) { npc.broadcastPacket(new NpcSay(npc.getObjectId(), Say2.NPC_ALL, npc.getId(), point.getChat())); } npc.getAI().setIntention(CtrlIntention.AI_INTENTION_MOVE_TO, new Location(point.getX(), point.getY(), point.getZ())); // Log movement intention System.out.println("NPC " + npc.getObjectId() + " moving to " + point.getX() + ", " + point.getY() + ", " + point.getZ()); // Schedule a check to see if the NPC has reached its destination startQuestTimer("check_reached", 1000, npc, null); } } private void checkIfReached(L2Npc npc) { String routeName = npcCurrentRoute.get(npc.getObjectId()); Route route = routes.get(routeName); Integer pointIndex = npcIndexes.get(npc.getObjectId()); if (route != null && pointIndex != null) { RoutePoint point = route.getPoints().get(pointIndex); Location currentLocation = npc.getLocation(); Location targetLocation = new Location(point.getX(), point.getY(), point.getZ()); // Check if the NPC has reached the target location if (currentLocation.equals(targetLocation)) { // Log that the NPC has reached the target System.out.println("NPC " + npc.getObjectId() + " reached target " + targetLocation); // Schedule the next movement startQuestTimer("move", point.getDelay() * 1000, npc, null); if (!npcReverse.get(npc.getObjectId())) { pointIndex++; if (pointIndex >= route.getPoints().size()) { npcReverse.put(npc.getObjectId(), true); pointIndex = route.getPoints().size() - 1; } } else { pointIndex--; if (pointIndex < 0) { npcReverse.put(npc.getObjectId(), false); pointIndex = 0; // Choose a new route after completing the current one in both directions switchRouteForNpc(npc); return; } } npcIndexes.put(npc.getObjectId(), pointIndex); } else { // Check again after 1 second startQuestTimer("check_reached", 1000, npc, null); } } } private void selectInitialRouteForNpc(L2Npc npc) { // Randomly select either route1 or route2 String selectedRouteName = "route" + (new Random().nextInt(2) + 1); npcCurrentRoute.put(npc.getObjectId(), selectedRouteName); npcIndexes.put(npc.getObjectId(), 0); npcReverse.put(npc.getObjectId(), false); startQuestTimer("move", 5000, npc, null); // Log initial route selection System.out.println("NPC " + npc.getObjectId() + " selected initial route " + selectedRouteName); } private void switchRouteForNpc(L2Npc npc) { String currentRoute = npcCurrentRoute.get(npc.getObjectId()); String newRoute = currentRoute.equals("route1") ? "route2" : "route1"; npcCurrentRoute.put(npc.getObjectId(), newRoute); npcIndexes.put(npc.getObjectId(), 0); npcReverse.put(npc.getObjectId(), false); startQuestTimer("move", 5000, npc, null); // Log route switching System.out.println("NPC " + npc.getObjectId() + " switched to route " + newRoute); } private static class Route { private List<RoutePoint> points = new ArrayList<>(); public Route(String name) { } public void addPoint(RoutePoint point) { points.add(point); } public List<RoutePoint> getPoints() { return points; } } private static class RoutePoint { private int id; private int x, y, z, delay; private boolean run; private String chat; public RoutePoint(int id, int x, int y, int z, int delay, boolean run, String chat) { this.id = id; this.x = x; this.y = y; this.z = z; this.delay = delay; this.run = run; this.chat = chat; } public int getId() { return id; } public int getX() { return x; } public int getY() { return y; } public int getZ() { return z; } public int getDelay() { return delay; } public boolean isRun() { return run; } public String getChat() { return chat; } } } I looking for help, with this, the npc not start to move. Im trying to create, an NPC wich have multiple walk routes basic logic is  random pick a route complite the route  like Route 1 start form zero (0 -> 1 -> 2(or more) -> 1 -> 0) When the npc return to 0, the script should pic the other route and start again.  And if there is a message like point 1 here     "route1.addPoint(new RoutePoint(1, 148568, 172328, -980, 5, true, "Puff"));" The npc should display the chat message. Currently my problem is the npc not moving, but if I manage it to start moving its randomly move between the route 1 and 2 set of coordinates. Currently for me its  a nightmare. I hope anyone can help somhow.
    • We are certainly not an ambulance, but we will definitely cure you of blacklists and empty pockets. Live freely with SX! Each of you will receive a trial version of SX to familiarize yourself with the product, all you have to do is post in this thread
  • Topics

×
×
  • Create New...