Giter Site home page Giter Site logo

Comments (7)

albertcui avatar albertcui commented on May 23, 2024

The combat log only shows when a rune is activated and doesn't account for illusion runes. We should probably use the combat log.

EntityCollection ent = match.getEntities();
Iterator<Entity> it = ent.getAllByDtName("DT_DOTA_Item_Rune");

Should return runes.

from core.

howardchung avatar howardchung commented on May 23, 2024

Now using the user messages to get rune info. . . but only rune bottling events are showing up

from core.

howardchung avatar howardchung commented on May 23, 2024

Tested getting the entities. I'm able to retrieve the rune entities but so far, not who picked them up.

from core.

howardchung avatar howardchung commented on May 23, 2024

http://wiki.zynox.net/Network_Information

Wards:
DT_DOTA_Item_ObserverWard
DT_DOTA_Item_SentryWard
DT_DOTA_NPC_Observer_Ward
DT_DOTA_NPC_Observer_Ward_TrueSight

Possibly the first two are inventory entities and the second two are actual placed entities?

from core.

howardchung avatar howardchung commented on May 23, 2024

Rjackson's Python code for wards:


wards_seen = []
r_ward_positions = []
d_ward_positions = []
for tick, string_tables, world in demo.stream(tick=5000):
  ward_dt = 'DT_DOTA_NPC_Observer_Ward'
  obs_ward = world.find_all_by_dt(ward_dt)
  if obs_ward:
    for ehandle, state in obs_ward.items():
      index, _ = _world.from_ehandle(ehandle)
      if index not in wards_seen:
          wards_seen.append(index)
          team = state[('DT_BaseEntity', 'm_iTeamNum')]
          cellX = state[('DT_DOTA_BaseNPC', 'm_cellX')] + state[('DT_DOTA_BaseNPC', 'm_vecOrigin')][0] / 128.0
          cellY = state[('DT_DOTA_BaseNPC', 'm_cellY')] + state[('DT_DOTA_BaseNPC', 'm_vecOrigin')][1] / 128.0
          pos = (cellX, cellY)
          if team == 2:
              r_ward_positions.append(pos)
          elif team == 3:
              d_ward_positions.append(pos)

from core.

howardchung avatar howardchung commented on May 23, 2024

Wards:
We can heatmap ward placements per team?
Should we do both sentries and observers or just observers?

Runes:
We can display how many runes of each type each player activated?
We can get data for how many runes of each type spawned, but not sure if it's worth the additional parse time.

from core.

howardchung avatar howardchung commented on May 23, 2024

have the data now, just need to put in template:
runes activated/bottled
obs/sen placement heatmaps for each player

from core.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.