     return 'not all session dependencies registered' if @sessionDependenciesRegistered and not @sessionDependenciesRegistered[@session.id] and not @sessionless
     return 'not all opponent session dependencies registered' if @sessionDependenciesRegistered and @opponentSession and not @sessionDependenciesRegistered[@opponentSession.id] and not @sessionless
     return 'session is not loaded' unless @session?.loaded or @sessionless
-    return 'opponent session is not loaded' if @opponentSession and not @opponentSession.loaded
+    return 'opponent session is not loaded' if @opponentSession and (not @opponentSession.loaded or @opponentSession.get('interpret'))
     return 'have not published level loaded' unless @publishedLevelLoaded or @sessionless
     return ''
 

      @worldNecessities.push @maybeLoadURL(url, LevelComponent, 'component')

  onWorldNecessityLoaded: (resource) ->
    index = @worldNecessities.indexOf(resource)
    if resource.name is 'thang'
      @loadDefaultComponentsForThangType(resource.model)

      @opponentSession = @opponentSessionResource.model

    if @session.loaded
      console.debug 'LevelLoader: session already loaded:', @session if LOG
      @session.setURL '/db/level.session/' + @session.id
      @loadDependenciesForSession @session
    else
      console.debug 'LevelLoader: loading session:', @session if LOG
      @listenToOnce @session, 'sync', ->
        @session.setURL '/db/level.session/' + @session.id
        @loadDependenciesForSession @session
    if @opponentSession
      if @opponentSession.loaded
        console.debug 'LevelLoader: opponent session already loaded:', @opponentSession if LOG
        @loadDependenciesForSession @opponentSession
      else
        console.debug 'LevelLoader: loading opponent session:', @opponentSession if LOG
        @listenToOnce @opponentSession, 'sync', @loadDependenciesForSession

  loadDependenciesForSession: (session) ->
